diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..90879a2 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,41 @@ +name: Continuous Integration +on: + push: + branches: [main] + pull_request: + +jobs: + build: + runs-on: ubuntu-latest + container: + image: ghcr.io/${{ github.repository }}:latest + + steps: + - uses: actions/checkout@v4 + id: checkout + name: Setup checkout + with: + submodules: recursive + + # BUG: required; build2 doesn't proceed with local "safe directory" from + # checkout. + # + - run: git config --global --add safe.directory '*' + + # BUG: required; bdep will pass "-n/assumeno" to DNF when running under + # GitHub CI. + # + - run: sudo dnf install -y gtk4-devel glib2-devel appstream-devel + + # BUG: FIXME: skip tests; GTK Tests will attempt to open display. This + # doesn't work when we're running in GitHub CI. + # + - run: | + bdep init -C @gcc cc config.cxx=g++ -- ?sys:gtk4-devel ?sys:glib2-devel ?sys:appstream-devel --sys-no-stub --sys-install + bdep update + bpkg bindist -d ../libadwaita-gcc/ libadwaita + + - uses: actions/upload-artifact@v4 + id: upload-artifact + with: + path: '/github/home/rpmbuild/RPMS/x86_64/**' diff --git a/.github/workflows/cr.yml b/.github/workflows/cr.yml new file mode 100644 index 0000000..4e265ff --- /dev/null +++ b/.github/workflows/cr.yml @@ -0,0 +1,42 @@ +name: Container Registry +on: + schedule: + - cron: "0 0 * * *" + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + strategy: + fail-fast: false + steps: + - uses: docker/login-action@v3 + id: login + name: Setup login + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - uses: docker/metadata-action@v5 + id: metadata + name: Setup metadata + with: + images: ghcr.io/${{ github.repository }} + tags: | + type=raw,value=latest + type=ref,event=branch + + - uses: docker/setup-buildx-action@v3 + id: setup-buildx + name: Setup build + + - uses: docker/build-push-action@v5 + id: build-push + name: Build and push + with: + push: true + tags: ${{ steps.metadata.outputs.tags }} + labels: ${{ steps.metadata.outputs.labels }} + cache-to: type=registry,ref=ghcr.io/${{ github.repository }}:buildcache,mode=max + cache-from: type=registry,ref=ghcr.io/${{ github.repository }}:buildcache diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..2c37941 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "upstream"] + path = upstream + url = https://gitlab.gnome.org/GNOME/libadwaita.git diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..cbe9d81 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,25 @@ +FROM registry.fedoraproject.org/fedora:latest + +RUN <<-EOT + set -x # Print trace of simple commands. + + dnf upgrade -y + dnf install -y \ + --enablerepo=fedora-debuginfo,updates-debuginfo \ + --disablerepo=updates-testing,updates-testing-debuginfo \ + --setopt=install_weak_deps=False \ + \ + gcc \ + gcc-c++ \ + gcc-plugin-devel \ + clang \ + clang-tools-extra \ + rpmdevtools \ + \ + dbus-x11 \ + dbus-devel \ + \ + build2 \ + bdep \ + bpkg +EOT diff --git a/README.md b/README.md index ee4edad..e9bfef2 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,11 @@ -# libadwaita - +# libadwaita - Building blocks for modern GNOME applications -This is a `build2` package repository for [`libadwaita`](https://), -a . +This is a `build2` package repository for [`libadwaita`](https://gitlab.gnome.org/GNOME/libadwaita), a GTK 4 library implementing the GNOME HIG, complementing GTK. This file contains setup instructions and other details that are more appropriate for development rather than consumption. If you want to use `libadwaita` in your `build2`-based project, then instead see the accompanying -[`PACKAGE-README.md`](/PACKAGE-README.md) file. +[`PACKAGE-README.md`](libadwaita/PACKAGE-README.md) file. The development setup for `libadwaita` uses the standard `bdep`-based workflow. For example: @@ -15,7 +14,7 @@ For example: git clone .../libadwaita.git cd libadwaita -bdep init -C @gcc cc config.cxx=g++ +bdep init -C @gcc cc config.cxx=g++ -- ?sys:gtk4-devel ?sys:glib2-devel ?sys:appstream-devel --sys-no-stub --sys-install bdep update bdep test ``` diff --git a/buildfile b/buildfile new file mode 100644 index 0000000..c3c8909 --- /dev/null +++ b/buildfile @@ -0,0 +1,6 @@ +# Glue buildfile that "pulls" all the packages in the project. +# +import pkgs = [dir_paths] $process.run_regex(\ + cat $src_root/packages.manifest, '\s*location\s*:\s*(\S+)\s*', '\1') + +./: $pkgs diff --git a/libadwaita/.gitignore b/libadwaita/.gitignore new file mode 100644 index 0000000..1c363a0 --- /dev/null +++ b/libadwaita/.gitignore @@ -0,0 +1,25 @@ +# Compiler/linker output. +# +*.d +*.t +*.i +*.i.* +*.ii +*.ii.* +*.o +*.obj +*.gcm +*.pcm +*.ifc +*.so +*.dylib +*.dll +*.a +*.lib +*.exp +*.pdb +*.ilk +*.exe +*.exe.dlls/ +*.exe.manifest +*.pc diff --git a/libadwaita/PACKAGE-README.md b/libadwaita/PACKAGE-README.md new file mode 100644 index 0000000..7e24cef --- /dev/null +++ b/libadwaita/PACKAGE-README.md @@ -0,0 +1,18 @@ +# libadwaita - A C library + +This is a `build2` package for the [`libadwaita`](https://gitlab.gnome.org/GNOME/libadwaita) C library. It provides Building blocks for modern GNOME applications. + +## Usage + +To start using `libadwaita` in your project, add the following `depends` +value to your `manifest`, adjusting the version constraint as appropriate: + +``` +depends: libadwaita ^1.5.0 +``` + +Then import the library in your `buildfile`: + +``` +import libs = libadwaita%lib{adwaita} +``` diff --git a/libadwaita/build/.gitignore b/libadwaita/build/.gitignore new file mode 100644 index 0000000..974e01d --- /dev/null +++ b/libadwaita/build/.gitignore @@ -0,0 +1,4 @@ +/config.build +/root/ +/bootstrap/ +build/ diff --git a/libadwaita/build/bootstrap.build b/libadwaita/build/bootstrap.build new file mode 100644 index 0000000..dc13f71 --- /dev/null +++ b/libadwaita/build/bootstrap.build @@ -0,0 +1,7 @@ +project = libadwaita + +using version +using config +using test +using install +using dist diff --git a/libadwaita/build/export.build b/libadwaita/build/export.build new file mode 100644 index 0000000..f50b206 --- /dev/null +++ b/libadwaita/build/export.build @@ -0,0 +1,6 @@ +$out_root/ +{ + include libadwaita/ +} + +export $out_root/libadwaita/$import.target diff --git a/libadwaita/build/root.build b/libadwaita/build/root.build new file mode 100644 index 0000000..d09184f --- /dev/null +++ b/libadwaita/build/root.build @@ -0,0 +1,12 @@ +# Uncomment to suppress warnings coming from external libraries. +# +#c.internal.scope = current + +using c + +h{*}: extension = h +c{*}: extension = c + +# The test target for cross-testing (running tests under Wine, etc). +# +test.target = $c.target diff --git a/libadwaita/buildfile b/libadwaita/buildfile new file mode 100644 index 0000000..46ae957 --- /dev/null +++ b/libadwaita/buildfile @@ -0,0 +1,5 @@ +./: {*/ -build/} doc{PACKAGE-README.md} manifest + +# Don't install tests. +# +tests/: install = false diff --git a/libadwaita/libadwaita/adw-about-dialog.c b/libadwaita/libadwaita/adw-about-dialog.c new file mode 120000 index 0000000..0e354a6 --- /dev/null +++ b/libadwaita/libadwaita/adw-about-dialog.c @@ -0,0 +1 @@ +../../upstream/src/adw-about-dialog.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-about-dialog.h b/libadwaita/libadwaita/adw-about-dialog.h new file mode 120000 index 0000000..4cc646d --- /dev/null +++ b/libadwaita/libadwaita/adw-about-dialog.h @@ -0,0 +1 @@ +../../upstream/src/adw-about-dialog.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-about-dialog.ui b/libadwaita/libadwaita/adw-about-dialog.ui new file mode 120000 index 0000000..33d53ae --- /dev/null +++ b/libadwaita/libadwaita/adw-about-dialog.ui @@ -0,0 +1 @@ +../../upstream/src/adw-about-dialog.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-about-window.c b/libadwaita/libadwaita/adw-about-window.c new file mode 120000 index 0000000..c2ade37 --- /dev/null +++ b/libadwaita/libadwaita/adw-about-window.c @@ -0,0 +1 @@ +../../upstream/src/adw-about-window.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-about-window.h b/libadwaita/libadwaita/adw-about-window.h new file mode 120000 index 0000000..bd8f579 --- /dev/null +++ b/libadwaita/libadwaita/adw-about-window.h @@ -0,0 +1 @@ +../../upstream/src/adw-about-window.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-about-window.ui b/libadwaita/libadwaita/adw-about-window.ui new file mode 120000 index 0000000..d7c1cfa --- /dev/null +++ b/libadwaita/libadwaita/adw-about-window.ui @@ -0,0 +1 @@ +../../upstream/src/adw-about-window.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-action-row-private.h b/libadwaita/libadwaita/adw-action-row-private.h new file mode 120000 index 0000000..5dc42d4 --- /dev/null +++ b/libadwaita/libadwaita/adw-action-row-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-action-row-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-action-row.c b/libadwaita/libadwaita/adw-action-row.c new file mode 120000 index 0000000..b5183b1 --- /dev/null +++ b/libadwaita/libadwaita/adw-action-row.c @@ -0,0 +1 @@ +../../upstream/src/adw-action-row.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-action-row.h b/libadwaita/libadwaita/adw-action-row.h new file mode 120000 index 0000000..38ecc00 --- /dev/null +++ b/libadwaita/libadwaita/adw-action-row.h @@ -0,0 +1 @@ +../../upstream/src/adw-action-row.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-action-row.ui b/libadwaita/libadwaita/adw-action-row.ui new file mode 120000 index 0000000..96879ac --- /dev/null +++ b/libadwaita/libadwaita/adw-action-row.ui @@ -0,0 +1 @@ +../../upstream/src/adw-action-row.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-alert-dialog.c b/libadwaita/libadwaita/adw-alert-dialog.c new file mode 120000 index 0000000..559cdc5 --- /dev/null +++ b/libadwaita/libadwaita/adw-alert-dialog.c @@ -0,0 +1 @@ +../../upstream/src/adw-alert-dialog.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-alert-dialog.h b/libadwaita/libadwaita/adw-alert-dialog.h new file mode 120000 index 0000000..2d8f8a7 --- /dev/null +++ b/libadwaita/libadwaita/adw-alert-dialog.h @@ -0,0 +1 @@ +../../upstream/src/adw-alert-dialog.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-alert-dialog.ui b/libadwaita/libadwaita/adw-alert-dialog.ui new file mode 120000 index 0000000..441d073 --- /dev/null +++ b/libadwaita/libadwaita/adw-alert-dialog.ui @@ -0,0 +1 @@ +../../upstream/src/adw-alert-dialog.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-animation-private.h b/libadwaita/libadwaita/adw-animation-private.h new file mode 120000 index 0000000..9abe1fb --- /dev/null +++ b/libadwaita/libadwaita/adw-animation-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-animation-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-animation-target-private.h b/libadwaita/libadwaita/adw-animation-target-private.h new file mode 120000 index 0000000..602a52c --- /dev/null +++ b/libadwaita/libadwaita/adw-animation-target-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-animation-target-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-animation-target.c b/libadwaita/libadwaita/adw-animation-target.c new file mode 120000 index 0000000..e3ea459 --- /dev/null +++ b/libadwaita/libadwaita/adw-animation-target.c @@ -0,0 +1 @@ +../../upstream/src/adw-animation-target.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-animation-target.h b/libadwaita/libadwaita/adw-animation-target.h new file mode 120000 index 0000000..164eaaa --- /dev/null +++ b/libadwaita/libadwaita/adw-animation-target.h @@ -0,0 +1 @@ +../../upstream/src/adw-animation-target.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-animation-util.c b/libadwaita/libadwaita/adw-animation-util.c new file mode 120000 index 0000000..53304f4 --- /dev/null +++ b/libadwaita/libadwaita/adw-animation-util.c @@ -0,0 +1 @@ +../../upstream/src/adw-animation-util.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-animation-util.h b/libadwaita/libadwaita/adw-animation-util.h new file mode 120000 index 0000000..bc02b26 --- /dev/null +++ b/libadwaita/libadwaita/adw-animation-util.h @@ -0,0 +1 @@ +../../upstream/src/adw-animation-util.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-animation.c b/libadwaita/libadwaita/adw-animation.c new file mode 120000 index 0000000..ac3cc99 --- /dev/null +++ b/libadwaita/libadwaita/adw-animation.c @@ -0,0 +1 @@ +../../upstream/src/adw-animation.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-animation.h b/libadwaita/libadwaita/adw-animation.h new file mode 120000 index 0000000..26c2feb --- /dev/null +++ b/libadwaita/libadwaita/adw-animation.h @@ -0,0 +1 @@ +../../upstream/src/adw-animation.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-application-window.c b/libadwaita/libadwaita/adw-application-window.c new file mode 120000 index 0000000..1eac2d7 --- /dev/null +++ b/libadwaita/libadwaita/adw-application-window.c @@ -0,0 +1 @@ +../../upstream/src/adw-application-window.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-application-window.h b/libadwaita/libadwaita/adw-application-window.h new file mode 120000 index 0000000..1f063d1 --- /dev/null +++ b/libadwaita/libadwaita/adw-application-window.h @@ -0,0 +1 @@ +../../upstream/src/adw-application-window.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-application.c b/libadwaita/libadwaita/adw-application.c new file mode 120000 index 0000000..17ddaed --- /dev/null +++ b/libadwaita/libadwaita/adw-application.c @@ -0,0 +1 @@ +../../upstream/src/adw-application.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-application.h b/libadwaita/libadwaita/adw-application.h new file mode 120000 index 0000000..45678b3 --- /dev/null +++ b/libadwaita/libadwaita/adw-application.h @@ -0,0 +1 @@ +../../upstream/src/adw-application.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-avatar.c b/libadwaita/libadwaita/adw-avatar.c new file mode 120000 index 0000000..4421a6d --- /dev/null +++ b/libadwaita/libadwaita/adw-avatar.c @@ -0,0 +1 @@ +../../upstream/src/adw-avatar.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-avatar.h b/libadwaita/libadwaita/adw-avatar.h new file mode 120000 index 0000000..475985f --- /dev/null +++ b/libadwaita/libadwaita/adw-avatar.h @@ -0,0 +1 @@ +../../upstream/src/adw-avatar.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-back-button-private.h b/libadwaita/libadwaita/adw-back-button-private.h new file mode 120000 index 0000000..02fa220 --- /dev/null +++ b/libadwaita/libadwaita/adw-back-button-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-back-button-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-back-button.c b/libadwaita/libadwaita/adw-back-button.c new file mode 120000 index 0000000..79bb7d2 --- /dev/null +++ b/libadwaita/libadwaita/adw-back-button.c @@ -0,0 +1 @@ +../../upstream/src/adw-back-button.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-banner.c b/libadwaita/libadwaita/adw-banner.c new file mode 120000 index 0000000..79c6681 --- /dev/null +++ b/libadwaita/libadwaita/adw-banner.c @@ -0,0 +1 @@ +../../upstream/src/adw-banner.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-banner.h b/libadwaita/libadwaita/adw-banner.h new file mode 120000 index 0000000..2f51215 --- /dev/null +++ b/libadwaita/libadwaita/adw-banner.h @@ -0,0 +1 @@ +../../upstream/src/adw-banner.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-banner.ui b/libadwaita/libadwaita/adw-banner.ui new file mode 120000 index 0000000..2cfb122 --- /dev/null +++ b/libadwaita/libadwaita/adw-banner.ui @@ -0,0 +1 @@ +../../upstream/src/adw-banner.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-bidi-private.h b/libadwaita/libadwaita/adw-bidi-private.h new file mode 120000 index 0000000..8e9aec6 --- /dev/null +++ b/libadwaita/libadwaita/adw-bidi-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-bidi-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-bidi.c b/libadwaita/libadwaita/adw-bidi.c new file mode 120000 index 0000000..156ab35 --- /dev/null +++ b/libadwaita/libadwaita/adw-bidi.c @@ -0,0 +1 @@ +../../upstream/src/adw-bidi.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-bin.c b/libadwaita/libadwaita/adw-bin.c new file mode 120000 index 0000000..859cd78 --- /dev/null +++ b/libadwaita/libadwaita/adw-bin.c @@ -0,0 +1 @@ +../../upstream/src/adw-bin.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-bin.h b/libadwaita/libadwaita/adw-bin.h new file mode 120000 index 0000000..5b750fd --- /dev/null +++ b/libadwaita/libadwaita/adw-bin.h @@ -0,0 +1 @@ +../../upstream/src/adw-bin.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-bottom-sheet-private.h b/libadwaita/libadwaita/adw-bottom-sheet-private.h new file mode 120000 index 0000000..530442d --- /dev/null +++ b/libadwaita/libadwaita/adw-bottom-sheet-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-bottom-sheet-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-bottom-sheet.c b/libadwaita/libadwaita/adw-bottom-sheet.c new file mode 120000 index 0000000..67f902c --- /dev/null +++ b/libadwaita/libadwaita/adw-bottom-sheet.c @@ -0,0 +1 @@ +../../upstream/src/adw-bottom-sheet.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-breakpoint-bin-private.h b/libadwaita/libadwaita/adw-breakpoint-bin-private.h new file mode 120000 index 0000000..3eec8e3 --- /dev/null +++ b/libadwaita/libadwaita/adw-breakpoint-bin-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-breakpoint-bin-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-breakpoint-bin.c b/libadwaita/libadwaita/adw-breakpoint-bin.c new file mode 120000 index 0000000..1b9b9ca --- /dev/null +++ b/libadwaita/libadwaita/adw-breakpoint-bin.c @@ -0,0 +1 @@ +../../upstream/src/adw-breakpoint-bin.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-breakpoint-bin.h b/libadwaita/libadwaita/adw-breakpoint-bin.h new file mode 120000 index 0000000..d2e12e3 --- /dev/null +++ b/libadwaita/libadwaita/adw-breakpoint-bin.h @@ -0,0 +1 @@ +../../upstream/src/adw-breakpoint-bin.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-breakpoint-private.h b/libadwaita/libadwaita/adw-breakpoint-private.h new file mode 120000 index 0000000..1444d3f --- /dev/null +++ b/libadwaita/libadwaita/adw-breakpoint-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-breakpoint-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-breakpoint.c b/libadwaita/libadwaita/adw-breakpoint.c new file mode 120000 index 0000000..26be43f --- /dev/null +++ b/libadwaita/libadwaita/adw-breakpoint.c @@ -0,0 +1 @@ +../../upstream/src/adw-breakpoint.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-breakpoint.h b/libadwaita/libadwaita/adw-breakpoint.h new file mode 120000 index 0000000..d20598a --- /dev/null +++ b/libadwaita/libadwaita/adw-breakpoint.h @@ -0,0 +1 @@ +../../upstream/src/adw-breakpoint.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-button-content.c b/libadwaita/libadwaita/adw-button-content.c new file mode 120000 index 0000000..a2dbc5f --- /dev/null +++ b/libadwaita/libadwaita/adw-button-content.c @@ -0,0 +1 @@ +../../upstream/src/adw-button-content.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-button-content.h b/libadwaita/libadwaita/adw-button-content.h new file mode 120000 index 0000000..1cfd6b9 --- /dev/null +++ b/libadwaita/libadwaita/adw-button-content.h @@ -0,0 +1 @@ +../../upstream/src/adw-button-content.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-carousel-indicator-dots.c b/libadwaita/libadwaita/adw-carousel-indicator-dots.c new file mode 120000 index 0000000..299c1a7 --- /dev/null +++ b/libadwaita/libadwaita/adw-carousel-indicator-dots.c @@ -0,0 +1 @@ +../../upstream/src/adw-carousel-indicator-dots.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-carousel-indicator-dots.h b/libadwaita/libadwaita/adw-carousel-indicator-dots.h new file mode 120000 index 0000000..df92c12 --- /dev/null +++ b/libadwaita/libadwaita/adw-carousel-indicator-dots.h @@ -0,0 +1 @@ +../../upstream/src/adw-carousel-indicator-dots.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-carousel-indicator-lines.c b/libadwaita/libadwaita/adw-carousel-indicator-lines.c new file mode 120000 index 0000000..bd64f33 --- /dev/null +++ b/libadwaita/libadwaita/adw-carousel-indicator-lines.c @@ -0,0 +1 @@ +../../upstream/src/adw-carousel-indicator-lines.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-carousel-indicator-lines.h b/libadwaita/libadwaita/adw-carousel-indicator-lines.h new file mode 120000 index 0000000..ead9d69 --- /dev/null +++ b/libadwaita/libadwaita/adw-carousel-indicator-lines.h @@ -0,0 +1 @@ +../../upstream/src/adw-carousel-indicator-lines.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-carousel.c b/libadwaita/libadwaita/adw-carousel.c new file mode 120000 index 0000000..fe98c45 --- /dev/null +++ b/libadwaita/libadwaita/adw-carousel.c @@ -0,0 +1 @@ +../../upstream/src/adw-carousel.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-carousel.h b/libadwaita/libadwaita/adw-carousel.h new file mode 120000 index 0000000..7e7761e --- /dev/null +++ b/libadwaita/libadwaita/adw-carousel.h @@ -0,0 +1 @@ +../../upstream/src/adw-carousel.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-clamp-layout.c b/libadwaita/libadwaita/adw-clamp-layout.c new file mode 120000 index 0000000..6e20be1 --- /dev/null +++ b/libadwaita/libadwaita/adw-clamp-layout.c @@ -0,0 +1 @@ +../../upstream/src/adw-clamp-layout.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-clamp-layout.h b/libadwaita/libadwaita/adw-clamp-layout.h new file mode 120000 index 0000000..f6e6688 --- /dev/null +++ b/libadwaita/libadwaita/adw-clamp-layout.h @@ -0,0 +1 @@ +../../upstream/src/adw-clamp-layout.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-clamp-scrollable.c b/libadwaita/libadwaita/adw-clamp-scrollable.c new file mode 120000 index 0000000..28a93b5 --- /dev/null +++ b/libadwaita/libadwaita/adw-clamp-scrollable.c @@ -0,0 +1 @@ +../../upstream/src/adw-clamp-scrollable.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-clamp-scrollable.h b/libadwaita/libadwaita/adw-clamp-scrollable.h new file mode 120000 index 0000000..4dfe28d --- /dev/null +++ b/libadwaita/libadwaita/adw-clamp-scrollable.h @@ -0,0 +1 @@ +../../upstream/src/adw-clamp-scrollable.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-clamp.c b/libadwaita/libadwaita/adw-clamp.c new file mode 120000 index 0000000..3723203 --- /dev/null +++ b/libadwaita/libadwaita/adw-clamp.c @@ -0,0 +1 @@ +../../upstream/src/adw-clamp.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-clamp.h b/libadwaita/libadwaita/adw-clamp.h new file mode 120000 index 0000000..8689c42 --- /dev/null +++ b/libadwaita/libadwaita/adw-clamp.h @@ -0,0 +1 @@ +../../upstream/src/adw-clamp.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-combo-row.c b/libadwaita/libadwaita/adw-combo-row.c new file mode 120000 index 0000000..a350fc1 --- /dev/null +++ b/libadwaita/libadwaita/adw-combo-row.c @@ -0,0 +1 @@ +../../upstream/src/adw-combo-row.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-combo-row.h b/libadwaita/libadwaita/adw-combo-row.h new file mode 120000 index 0000000..c4d6f38 --- /dev/null +++ b/libadwaita/libadwaita/adw-combo-row.h @@ -0,0 +1 @@ +../../upstream/src/adw-combo-row.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-combo-row.ui b/libadwaita/libadwaita/adw-combo-row.ui new file mode 120000 index 0000000..0a8d928 --- /dev/null +++ b/libadwaita/libadwaita/adw-combo-row.ui @@ -0,0 +1 @@ +../../upstream/src/adw-combo-row.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-dialog-host-private.h b/libadwaita/libadwaita/adw-dialog-host-private.h new file mode 120000 index 0000000..dc43f20 --- /dev/null +++ b/libadwaita/libadwaita/adw-dialog-host-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-dialog-host-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-dialog-host.c b/libadwaita/libadwaita/adw-dialog-host.c new file mode 120000 index 0000000..d4e22a9 --- /dev/null +++ b/libadwaita/libadwaita/adw-dialog-host.c @@ -0,0 +1 @@ +../../upstream/src/adw-dialog-host.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-dialog-private.h b/libadwaita/libadwaita/adw-dialog-private.h new file mode 120000 index 0000000..0e91ef1 --- /dev/null +++ b/libadwaita/libadwaita/adw-dialog-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-dialog-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-dialog.c b/libadwaita/libadwaita/adw-dialog.c new file mode 120000 index 0000000..07a67b9 --- /dev/null +++ b/libadwaita/libadwaita/adw-dialog.c @@ -0,0 +1 @@ +../../upstream/src/adw-dialog.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-dialog.h b/libadwaita/libadwaita/adw-dialog.h new file mode 120000 index 0000000..03a3fea --- /dev/null +++ b/libadwaita/libadwaita/adw-dialog.h @@ -0,0 +1 @@ +../../upstream/src/adw-dialog.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-easing.c b/libadwaita/libadwaita/adw-easing.c new file mode 120000 index 0000000..9504862 --- /dev/null +++ b/libadwaita/libadwaita/adw-easing.c @@ -0,0 +1 @@ +../../upstream/src/adw-easing.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-easing.h b/libadwaita/libadwaita/adw-easing.h new file mode 120000 index 0000000..22b6307 --- /dev/null +++ b/libadwaita/libadwaita/adw-easing.h @@ -0,0 +1 @@ +../../upstream/src/adw-easing.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-entry-row-private.h b/libadwaita/libadwaita/adw-entry-row-private.h new file mode 120000 index 0000000..28ebd9b --- /dev/null +++ b/libadwaita/libadwaita/adw-entry-row-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-entry-row-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-entry-row.c b/libadwaita/libadwaita/adw-entry-row.c new file mode 120000 index 0000000..7227a97 --- /dev/null +++ b/libadwaita/libadwaita/adw-entry-row.c @@ -0,0 +1 @@ +../../upstream/src/adw-entry-row.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-entry-row.h b/libadwaita/libadwaita/adw-entry-row.h new file mode 120000 index 0000000..9113816 --- /dev/null +++ b/libadwaita/libadwaita/adw-entry-row.h @@ -0,0 +1 @@ +../../upstream/src/adw-entry-row.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-entry-row.ui b/libadwaita/libadwaita/adw-entry-row.ui new file mode 120000 index 0000000..b6d850b --- /dev/null +++ b/libadwaita/libadwaita/adw-entry-row.ui @@ -0,0 +1 @@ +../../upstream/src/adw-entry-row.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-enum-list-model.c b/libadwaita/libadwaita/adw-enum-list-model.c new file mode 120000 index 0000000..e2b1e15 --- /dev/null +++ b/libadwaita/libadwaita/adw-enum-list-model.c @@ -0,0 +1 @@ +../../upstream/src/adw-enum-list-model.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-enum-list-model.h b/libadwaita/libadwaita/adw-enum-list-model.h new file mode 120000 index 0000000..4ff5997 --- /dev/null +++ b/libadwaita/libadwaita/adw-enum-list-model.h @@ -0,0 +1 @@ +../../upstream/src/adw-enum-list-model.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-enums-private.c b/libadwaita/libadwaita/adw-enums-private.c new file mode 100644 index 0000000..ea23e69 --- /dev/null +++ b/libadwaita/libadwaita/adw-enums-private.c @@ -0,0 +1,31 @@ + +/* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ + +#include "config.h" +#include "adw-enums-private.h" +#include "adw-settings-private.h" + +#define C_ENUM(v) ((gint) v) +#define C_FLAGS(v) ((guint) v) + +/* enumerations from "adw-settings-private.h" */ + +GType +adw_system_color_scheme_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_SYSTEM_COLOR_SCHEME_DEFAULT), "ADW_SYSTEM_COLOR_SCHEME_DEFAULT", "default" }, + { C_ENUM(ADW_SYSTEM_COLOR_SCHEME_PREFER_DARK), "ADW_SYSTEM_COLOR_SCHEME_PREFER_DARK", "prefer-dark" }, + { C_ENUM(ADW_SYSTEM_COLOR_SCHEME_PREFER_LIGHT), "ADW_SYSTEM_COLOR_SCHEME_PREFER_LIGHT", "prefer-light" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwSystemColorScheme"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* Generated data ends here */ + diff --git a/libadwaita/libadwaita/adw-enums-private.h b/libadwaita/libadwaita/adw-enums-private.h new file mode 100644 index 0000000..2880738 --- /dev/null +++ b/libadwaita/libadwaita/adw-enums-private.h @@ -0,0 +1,25 @@ + +/* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ + +#pragma once + + #include + #if !defined(_ADWAITA_INSIDE) && !defined(ADWAITA_COMPILATION) +#error "Only can be included directly." +#endif + +#include "adw-enums.h" + + + G_BEGIN_DECLS + +/* enumerations from "adw-settings-private.h" */ + + +GType adw_system_color_scheme_get_type (void); +#define ADW_TYPE_SYSTEM_COLOR_SCHEME (adw_system_color_scheme_get_type()) + +G_END_DECLS + +/* Generated data ends here */ + diff --git a/libadwaita/libadwaita/adw-enums.c b/libadwaita/libadwaita/adw-enums.c new file mode 100644 index 0000000..7e5946a --- /dev/null +++ b/libadwaita/libadwaita/adw-enums.c @@ -0,0 +1,422 @@ + +/* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ + +#include "config.h" +#include "adw-enums.h" +#include "adw-alert-dialog.h" +#include "adw-animation.h" +#include "adw-banner.h" +#include "adw-breakpoint.h" +#include "adw-dialog.h" +#include "adw-flap.h" +#include "adw-fold-threshold-policy.h" +#include "adw-easing.h" +#include "adw-header-bar.h" +#include "adw-leaflet.h" +#include "adw-length-unit.h" +#include "adw-navigation-direction.h" +#include "adw-style-manager.h" +#include "adw-squeezer.h" +#include "adw-tab-view.h" +#include "adw-toast.h" +#include "adw-toolbar-view.h" +#include "adw-view-switcher.h" + +#define C_ENUM(v) ((gint) v) +#define C_FLAGS(v) ((guint) v) + +/* enumerations from "adw-alert-dialog.h" */ + +GType +adw_response_appearance_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_RESPONSE_DEFAULT), "ADW_RESPONSE_DEFAULT", "default" }, + { C_ENUM(ADW_RESPONSE_SUGGESTED), "ADW_RESPONSE_SUGGESTED", "suggested" }, + { C_ENUM(ADW_RESPONSE_DESTRUCTIVE), "ADW_RESPONSE_DESTRUCTIVE", "destructive" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwResponseAppearance"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-animation.h" */ + +GType +adw_animation_state_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_ANIMATION_IDLE), "ADW_ANIMATION_IDLE", "idle" }, + { C_ENUM(ADW_ANIMATION_PAUSED), "ADW_ANIMATION_PAUSED", "paused" }, + { C_ENUM(ADW_ANIMATION_PLAYING), "ADW_ANIMATION_PLAYING", "playing" }, + { C_ENUM(ADW_ANIMATION_FINISHED), "ADW_ANIMATION_FINISHED", "finished" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwAnimationState"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-breakpoint.h" */ + +GType +adw_breakpoint_condition_length_type_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_BREAKPOINT_CONDITION_MIN_WIDTH), "ADW_BREAKPOINT_CONDITION_MIN_WIDTH", "min-width" }, + { C_ENUM(ADW_BREAKPOINT_CONDITION_MAX_WIDTH), "ADW_BREAKPOINT_CONDITION_MAX_WIDTH", "max-width" }, + { C_ENUM(ADW_BREAKPOINT_CONDITION_MIN_HEIGHT), "ADW_BREAKPOINT_CONDITION_MIN_HEIGHT", "min-height" }, + { C_ENUM(ADW_BREAKPOINT_CONDITION_MAX_HEIGHT), "ADW_BREAKPOINT_CONDITION_MAX_HEIGHT", "max-height" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwBreakpointConditionLengthType"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +GType +adw_breakpoint_condition_ratio_type_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_BREAKPOINT_CONDITION_MIN_ASPECT_RATIO), "ADW_BREAKPOINT_CONDITION_MIN_ASPECT_RATIO", "min-aspect-ratio" }, + { C_ENUM(ADW_BREAKPOINT_CONDITION_MAX_ASPECT_RATIO), "ADW_BREAKPOINT_CONDITION_MAX_ASPECT_RATIO", "max-aspect-ratio" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwBreakpointConditionRatioType"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-dialog.h" */ + +GType +adw_dialog_presentation_mode_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_DIALOG_AUTO), "ADW_DIALOG_AUTO", "auto" }, + { C_ENUM(ADW_DIALOG_FLOATING), "ADW_DIALOG_FLOATING", "floating" }, + { C_ENUM(ADW_DIALOG_BOTTOM_SHEET), "ADW_DIALOG_BOTTOM_SHEET", "bottom-sheet" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwDialogPresentationMode"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-easing.h" */ + +GType +adw_easing_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_LINEAR), "ADW_LINEAR", "linear" }, + { C_ENUM(ADW_EASE_IN_QUAD), "ADW_EASE_IN_QUAD", "ease-in-quad" }, + { C_ENUM(ADW_EASE_OUT_QUAD), "ADW_EASE_OUT_QUAD", "ease-out-quad" }, + { C_ENUM(ADW_EASE_IN_OUT_QUAD), "ADW_EASE_IN_OUT_QUAD", "ease-in-out-quad" }, + { C_ENUM(ADW_EASE_IN_CUBIC), "ADW_EASE_IN_CUBIC", "ease-in-cubic" }, + { C_ENUM(ADW_EASE_OUT_CUBIC), "ADW_EASE_OUT_CUBIC", "ease-out-cubic" }, + { C_ENUM(ADW_EASE_IN_OUT_CUBIC), "ADW_EASE_IN_OUT_CUBIC", "ease-in-out-cubic" }, + { C_ENUM(ADW_EASE_IN_QUART), "ADW_EASE_IN_QUART", "ease-in-quart" }, + { C_ENUM(ADW_EASE_OUT_QUART), "ADW_EASE_OUT_QUART", "ease-out-quart" }, + { C_ENUM(ADW_EASE_IN_OUT_QUART), "ADW_EASE_IN_OUT_QUART", "ease-in-out-quart" }, + { C_ENUM(ADW_EASE_IN_QUINT), "ADW_EASE_IN_QUINT", "ease-in-quint" }, + { C_ENUM(ADW_EASE_OUT_QUINT), "ADW_EASE_OUT_QUINT", "ease-out-quint" }, + { C_ENUM(ADW_EASE_IN_OUT_QUINT), "ADW_EASE_IN_OUT_QUINT", "ease-in-out-quint" }, + { C_ENUM(ADW_EASE_IN_SINE), "ADW_EASE_IN_SINE", "ease-in-sine" }, + { C_ENUM(ADW_EASE_OUT_SINE), "ADW_EASE_OUT_SINE", "ease-out-sine" }, + { C_ENUM(ADW_EASE_IN_OUT_SINE), "ADW_EASE_IN_OUT_SINE", "ease-in-out-sine" }, + { C_ENUM(ADW_EASE_IN_EXPO), "ADW_EASE_IN_EXPO", "ease-in-expo" }, + { C_ENUM(ADW_EASE_OUT_EXPO), "ADW_EASE_OUT_EXPO", "ease-out-expo" }, + { C_ENUM(ADW_EASE_IN_OUT_EXPO), "ADW_EASE_IN_OUT_EXPO", "ease-in-out-expo" }, + { C_ENUM(ADW_EASE_IN_CIRC), "ADW_EASE_IN_CIRC", "ease-in-circ" }, + { C_ENUM(ADW_EASE_OUT_CIRC), "ADW_EASE_OUT_CIRC", "ease-out-circ" }, + { C_ENUM(ADW_EASE_IN_OUT_CIRC), "ADW_EASE_IN_OUT_CIRC", "ease-in-out-circ" }, + { C_ENUM(ADW_EASE_IN_ELASTIC), "ADW_EASE_IN_ELASTIC", "ease-in-elastic" }, + { C_ENUM(ADW_EASE_OUT_ELASTIC), "ADW_EASE_OUT_ELASTIC", "ease-out-elastic" }, + { C_ENUM(ADW_EASE_IN_OUT_ELASTIC), "ADW_EASE_IN_OUT_ELASTIC", "ease-in-out-elastic" }, + { C_ENUM(ADW_EASE_IN_BACK), "ADW_EASE_IN_BACK", "ease-in-back" }, + { C_ENUM(ADW_EASE_OUT_BACK), "ADW_EASE_OUT_BACK", "ease-out-back" }, + { C_ENUM(ADW_EASE_IN_OUT_BACK), "ADW_EASE_IN_OUT_BACK", "ease-in-out-back" }, + { C_ENUM(ADW_EASE_IN_BOUNCE), "ADW_EASE_IN_BOUNCE", "ease-in-bounce" }, + { C_ENUM(ADW_EASE_OUT_BOUNCE), "ADW_EASE_OUT_BOUNCE", "ease-out-bounce" }, + { C_ENUM(ADW_EASE_IN_OUT_BOUNCE), "ADW_EASE_IN_OUT_BOUNCE", "ease-in-out-bounce" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwEasing"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-flap.h" */ + +GType +adw_flap_fold_policy_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_FLAP_FOLD_POLICY_NEVER), "ADW_FLAP_FOLD_POLICY_NEVER", "never" }, + { C_ENUM(ADW_FLAP_FOLD_POLICY_ALWAYS), "ADW_FLAP_FOLD_POLICY_ALWAYS", "always" }, + { C_ENUM(ADW_FLAP_FOLD_POLICY_AUTO), "ADW_FLAP_FOLD_POLICY_AUTO", "auto" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwFlapFoldPolicy"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +GType +adw_flap_transition_type_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_FLAP_TRANSITION_TYPE_OVER), "ADW_FLAP_TRANSITION_TYPE_OVER", "over" }, + { C_ENUM(ADW_FLAP_TRANSITION_TYPE_UNDER), "ADW_FLAP_TRANSITION_TYPE_UNDER", "under" }, + { C_ENUM(ADW_FLAP_TRANSITION_TYPE_SLIDE), "ADW_FLAP_TRANSITION_TYPE_SLIDE", "slide" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwFlapTransitionType"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-fold-threshold-policy.h" */ + +GType +adw_fold_threshold_policy_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_FOLD_THRESHOLD_POLICY_MINIMUM), "ADW_FOLD_THRESHOLD_POLICY_MINIMUM", "minimum" }, + { C_ENUM(ADW_FOLD_THRESHOLD_POLICY_NATURAL), "ADW_FOLD_THRESHOLD_POLICY_NATURAL", "natural" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwFoldThresholdPolicy"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-header-bar.h" */ + +GType +adw_centering_policy_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_CENTERING_POLICY_LOOSE), "ADW_CENTERING_POLICY_LOOSE", "loose" }, + { C_ENUM(ADW_CENTERING_POLICY_STRICT), "ADW_CENTERING_POLICY_STRICT", "strict" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwCenteringPolicy"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-leaflet.h" */ + +GType +adw_leaflet_transition_type_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_LEAFLET_TRANSITION_TYPE_OVER), "ADW_LEAFLET_TRANSITION_TYPE_OVER", "over" }, + { C_ENUM(ADW_LEAFLET_TRANSITION_TYPE_UNDER), "ADW_LEAFLET_TRANSITION_TYPE_UNDER", "under" }, + { C_ENUM(ADW_LEAFLET_TRANSITION_TYPE_SLIDE), "ADW_LEAFLET_TRANSITION_TYPE_SLIDE", "slide" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwLeafletTransitionType"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-length-unit.h" */ + +GType +adw_length_unit_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_LENGTH_UNIT_PX), "ADW_LENGTH_UNIT_PX", "px" }, + { C_ENUM(ADW_LENGTH_UNIT_PT), "ADW_LENGTH_UNIT_PT", "pt" }, + { C_ENUM(ADW_LENGTH_UNIT_SP), "ADW_LENGTH_UNIT_SP", "sp" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwLengthUnit"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-navigation-direction.h" */ + +GType +adw_navigation_direction_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_NAVIGATION_DIRECTION_BACK), "ADW_NAVIGATION_DIRECTION_BACK", "back" }, + { C_ENUM(ADW_NAVIGATION_DIRECTION_FORWARD), "ADW_NAVIGATION_DIRECTION_FORWARD", "forward" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwNavigationDirection"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-squeezer.h" */ + +GType +adw_squeezer_transition_type_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_SQUEEZER_TRANSITION_TYPE_NONE), "ADW_SQUEEZER_TRANSITION_TYPE_NONE", "none" }, + { C_ENUM(ADW_SQUEEZER_TRANSITION_TYPE_CROSSFADE), "ADW_SQUEEZER_TRANSITION_TYPE_CROSSFADE", "crossfade" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwSqueezerTransitionType"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-style-manager.h" */ + +GType +adw_color_scheme_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_COLOR_SCHEME_DEFAULT), "ADW_COLOR_SCHEME_DEFAULT", "default" }, + { C_ENUM(ADW_COLOR_SCHEME_FORCE_LIGHT), "ADW_COLOR_SCHEME_FORCE_LIGHT", "force-light" }, + { C_ENUM(ADW_COLOR_SCHEME_PREFER_LIGHT), "ADW_COLOR_SCHEME_PREFER_LIGHT", "prefer-light" }, + { C_ENUM(ADW_COLOR_SCHEME_PREFER_DARK), "ADW_COLOR_SCHEME_PREFER_DARK", "prefer-dark" }, + { C_ENUM(ADW_COLOR_SCHEME_FORCE_DARK), "ADW_COLOR_SCHEME_FORCE_DARK", "force-dark" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwColorScheme"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-tab-view.h" */ + +GType +adw_tab_view_shortcuts_get_type (void) +{ +static gsize gtype_id = 0; +static const GFlagsValue values[] = { + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_NONE), "ADW_TAB_VIEW_SHORTCUT_NONE", "none" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_TAB), "ADW_TAB_VIEW_SHORTCUT_CONTROL_TAB", "control-tab" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_TAB), "ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_TAB", "control-shift-tab" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_PAGE_UP), "ADW_TAB_VIEW_SHORTCUT_CONTROL_PAGE_UP", "control-page-up" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_PAGE_DOWN), "ADW_TAB_VIEW_SHORTCUT_CONTROL_PAGE_DOWN", "control-page-down" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_HOME), "ADW_TAB_VIEW_SHORTCUT_CONTROL_HOME", "control-home" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_END), "ADW_TAB_VIEW_SHORTCUT_CONTROL_END", "control-end" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_PAGE_UP), "ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_PAGE_UP", "control-shift-page-up" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_PAGE_DOWN), "ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_PAGE_DOWN", "control-shift-page-down" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_HOME), "ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_HOME", "control-shift-home" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_END), "ADW_TAB_VIEW_SHORTCUT_CONTROL_SHIFT_END", "control-shift-end" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_ALT_DIGITS), "ADW_TAB_VIEW_SHORTCUT_ALT_DIGITS", "alt-digits" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_ALT_ZERO), "ADW_TAB_VIEW_SHORTCUT_ALT_ZERO", "alt-zero" }, + { C_FLAGS(ADW_TAB_VIEW_SHORTCUT_ALL_SHORTCUTS), "ADW_TAB_VIEW_SHORTCUT_ALL_SHORTCUTS", "all-shortcuts" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_flags_register_static (g_intern_static_string ("AdwTabViewShortcuts"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-toast.h" */ + +GType +adw_toast_priority_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_TOAST_PRIORITY_NORMAL), "ADW_TOAST_PRIORITY_NORMAL", "normal" }, + { C_ENUM(ADW_TOAST_PRIORITY_HIGH), "ADW_TOAST_PRIORITY_HIGH", "high" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwToastPriority"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-toolbar-view.h" */ + +GType +adw_toolbar_style_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_TOOLBAR_FLAT), "ADW_TOOLBAR_FLAT", "flat" }, + { C_ENUM(ADW_TOOLBAR_RAISED), "ADW_TOOLBAR_RAISED", "raised" }, + { C_ENUM(ADW_TOOLBAR_RAISED_BORDER), "ADW_TOOLBAR_RAISED_BORDER", "raised-border" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwToolbarStyle"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* enumerations from "adw-view-switcher.h" */ + +GType +adw_view_switcher_policy_get_type (void) +{ +static gsize gtype_id = 0; +static const GEnumValue values[] = { + { C_ENUM(ADW_VIEW_SWITCHER_POLICY_NARROW), "ADW_VIEW_SWITCHER_POLICY_NARROW", "narrow" }, + { C_ENUM(ADW_VIEW_SWITCHER_POLICY_WIDE), "ADW_VIEW_SWITCHER_POLICY_WIDE", "wide" }, +{ 0, NULL, NULL } + }; + if (g_once_init_enter (>ype_id)) { + GType new_type = g_enum_register_static (g_intern_static_string ("AdwViewSwitcherPolicy"), values); + g_once_init_leave (>ype_id, new_type); + } + return (GType) gtype_id; + } + +/* Generated data ends here */ + diff --git a/libadwaita/libadwaita/adw-enums.h b/libadwaita/libadwaita/adw-enums.h new file mode 100644 index 0000000..1fdad29 --- /dev/null +++ b/libadwaita/libadwaita/adw-enums.h @@ -0,0 +1,129 @@ + +/* This file is generated by glib-mkenums, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ + +#pragma once + + #include + #if !defined(_ADWAITA_INSIDE) && !defined(ADWAITA_COMPILATION) +#error "Only can be included directly." +#endif + +#include "adw-version.h" + + + G_BEGIN_DECLS + +/* enumerations from "adw-alert-dialog.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_response_appearance_get_type (void); +#define ADW_TYPE_RESPONSE_APPEARANCE (adw_response_appearance_get_type()) + +/* enumerations from "adw-animation.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_animation_state_get_type (void); +#define ADW_TYPE_ANIMATION_STATE (adw_animation_state_get_type()) + +/* enumerations from "adw-breakpoint.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_breakpoint_condition_length_type_get_type (void); +#define ADW_TYPE_BREAKPOINT_CONDITION_LENGTH_TYPE (adw_breakpoint_condition_length_type_get_type()) + +ADW_AVAILABLE_IN_ALL +GType adw_breakpoint_condition_ratio_type_get_type (void); +#define ADW_TYPE_BREAKPOINT_CONDITION_RATIO_TYPE (adw_breakpoint_condition_ratio_type_get_type()) + +/* enumerations from "adw-dialog.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_dialog_presentation_mode_get_type (void); +#define ADW_TYPE_DIALOG_PRESENTATION_MODE (adw_dialog_presentation_mode_get_type()) + +/* enumerations from "adw-easing.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_easing_get_type (void); +#define ADW_TYPE_EASING (adw_easing_get_type()) + +/* enumerations from "adw-flap.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_flap_fold_policy_get_type (void); +#define ADW_TYPE_FLAP_FOLD_POLICY (adw_flap_fold_policy_get_type()) + +ADW_AVAILABLE_IN_ALL +GType adw_flap_transition_type_get_type (void); +#define ADW_TYPE_FLAP_TRANSITION_TYPE (adw_flap_transition_type_get_type()) + +/* enumerations from "adw-fold-threshold-policy.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_fold_threshold_policy_get_type (void); +#define ADW_TYPE_FOLD_THRESHOLD_POLICY (adw_fold_threshold_policy_get_type()) + +/* enumerations from "adw-header-bar.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_centering_policy_get_type (void); +#define ADW_TYPE_CENTERING_POLICY (adw_centering_policy_get_type()) + +/* enumerations from "adw-leaflet.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_leaflet_transition_type_get_type (void); +#define ADW_TYPE_LEAFLET_TRANSITION_TYPE (adw_leaflet_transition_type_get_type()) + +/* enumerations from "adw-length-unit.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_length_unit_get_type (void); +#define ADW_TYPE_LENGTH_UNIT (adw_length_unit_get_type()) + +/* enumerations from "adw-navigation-direction.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_navigation_direction_get_type (void); +#define ADW_TYPE_NAVIGATION_DIRECTION (adw_navigation_direction_get_type()) + +/* enumerations from "adw-squeezer.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_squeezer_transition_type_get_type (void); +#define ADW_TYPE_SQUEEZER_TRANSITION_TYPE (adw_squeezer_transition_type_get_type()) + +/* enumerations from "adw-style-manager.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_color_scheme_get_type (void); +#define ADW_TYPE_COLOR_SCHEME (adw_color_scheme_get_type()) + +/* enumerations from "adw-tab-view.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_tab_view_shortcuts_get_type (void); +#define ADW_TYPE_TAB_VIEW_SHORTCUTS (adw_tab_view_shortcuts_get_type()) + +/* enumerations from "adw-toast.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_toast_priority_get_type (void); +#define ADW_TYPE_TOAST_PRIORITY (adw_toast_priority_get_type()) + +/* enumerations from "adw-toolbar-view.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_toolbar_style_get_type (void); +#define ADW_TYPE_TOOLBAR_STYLE (adw_toolbar_style_get_type()) + +/* enumerations from "adw-view-switcher.h" */ + +ADW_AVAILABLE_IN_ALL +GType adw_view_switcher_policy_get_type (void); +#define ADW_TYPE_VIEW_SWITCHER_POLICY (adw_view_switcher_policy_get_type()) + +G_END_DECLS + +/* Generated data ends here */ + diff --git a/libadwaita/libadwaita/adw-expander-row.c b/libadwaita/libadwaita/adw-expander-row.c new file mode 120000 index 0000000..be3d7fb --- /dev/null +++ b/libadwaita/libadwaita/adw-expander-row.c @@ -0,0 +1 @@ +../../upstream/src/adw-expander-row.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-expander-row.h b/libadwaita/libadwaita/adw-expander-row.h new file mode 120000 index 0000000..21c32a8 --- /dev/null +++ b/libadwaita/libadwaita/adw-expander-row.h @@ -0,0 +1 @@ +../../upstream/src/adw-expander-row.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-expander-row.ui b/libadwaita/libadwaita/adw-expander-row.ui new file mode 120000 index 0000000..f5702dc --- /dev/null +++ b/libadwaita/libadwaita/adw-expander-row.ui @@ -0,0 +1 @@ +../../upstream/src/adw-expander-row.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-fading-label-private.h b/libadwaita/libadwaita/adw-fading-label-private.h new file mode 120000 index 0000000..df2e5a1 --- /dev/null +++ b/libadwaita/libadwaita/adw-fading-label-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-fading-label-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-fading-label.c b/libadwaita/libadwaita/adw-fading-label.c new file mode 120000 index 0000000..a0dd000 --- /dev/null +++ b/libadwaita/libadwaita/adw-fading-label.c @@ -0,0 +1 @@ +../../upstream/src/adw-fading-label.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-flap.c b/libadwaita/libadwaita/adw-flap.c new file mode 120000 index 0000000..098a40a --- /dev/null +++ b/libadwaita/libadwaita/adw-flap.c @@ -0,0 +1 @@ +../../upstream/src/adw-flap.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-flap.h b/libadwaita/libadwaita/adw-flap.h new file mode 120000 index 0000000..81d7639 --- /dev/null +++ b/libadwaita/libadwaita/adw-flap.h @@ -0,0 +1 @@ +../../upstream/src/adw-flap.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-floating-sheet-private.h b/libadwaita/libadwaita/adw-floating-sheet-private.h new file mode 120000 index 0000000..7fc9776 --- /dev/null +++ b/libadwaita/libadwaita/adw-floating-sheet-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-floating-sheet-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-floating-sheet.c b/libadwaita/libadwaita/adw-floating-sheet.c new file mode 120000 index 0000000..ce3d0a8 --- /dev/null +++ b/libadwaita/libadwaita/adw-floating-sheet.c @@ -0,0 +1 @@ +../../upstream/src/adw-floating-sheet.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-fold-threshold-policy.c b/libadwaita/libadwaita/adw-fold-threshold-policy.c new file mode 120000 index 0000000..77f66d9 --- /dev/null +++ b/libadwaita/libadwaita/adw-fold-threshold-policy.c @@ -0,0 +1 @@ +../../upstream/src/adw-fold-threshold-policy.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-fold-threshold-policy.h b/libadwaita/libadwaita/adw-fold-threshold-policy.h new file mode 120000 index 0000000..cb0e9ec --- /dev/null +++ b/libadwaita/libadwaita/adw-fold-threshold-policy.h @@ -0,0 +1 @@ +../../upstream/src/adw-fold-threshold-policy.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-gizmo-private.h b/libadwaita/libadwaita/adw-gizmo-private.h new file mode 120000 index 0000000..ef68bb7 --- /dev/null +++ b/libadwaita/libadwaita/adw-gizmo-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-gizmo-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-gizmo.c b/libadwaita/libadwaita/adw-gizmo.c new file mode 120000 index 0000000..f2dff56 --- /dev/null +++ b/libadwaita/libadwaita/adw-gizmo.c @@ -0,0 +1 @@ +../../upstream/src/adw-gizmo.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-gtkbuilder-utils-private.h b/libadwaita/libadwaita/adw-gtkbuilder-utils-private.h new file mode 120000 index 0000000..1decc01 --- /dev/null +++ b/libadwaita/libadwaita/adw-gtkbuilder-utils-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-gtkbuilder-utils-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-gtkbuilder-utils.c b/libadwaita/libadwaita/adw-gtkbuilder-utils.c new file mode 120000 index 0000000..5fd038d --- /dev/null +++ b/libadwaita/libadwaita/adw-gtkbuilder-utils.c @@ -0,0 +1 @@ +../../upstream/src/adw-gtkbuilder-utils.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-header-bar.c b/libadwaita/libadwaita/adw-header-bar.c new file mode 120000 index 0000000..1445304 --- /dev/null +++ b/libadwaita/libadwaita/adw-header-bar.c @@ -0,0 +1 @@ +../../upstream/src/adw-header-bar.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-header-bar.h b/libadwaita/libadwaita/adw-header-bar.h new file mode 120000 index 0000000..c733643 --- /dev/null +++ b/libadwaita/libadwaita/adw-header-bar.h @@ -0,0 +1 @@ +../../upstream/src/adw-header-bar.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-indicator-bin-private.h b/libadwaita/libadwaita/adw-indicator-bin-private.h new file mode 120000 index 0000000..4d4dc07 --- /dev/null +++ b/libadwaita/libadwaita/adw-indicator-bin-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-indicator-bin-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-indicator-bin.c b/libadwaita/libadwaita/adw-indicator-bin.c new file mode 120000 index 0000000..38c365b --- /dev/null +++ b/libadwaita/libadwaita/adw-indicator-bin.c @@ -0,0 +1 @@ +../../upstream/src/adw-indicator-bin.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-inspector-page-private.h b/libadwaita/libadwaita/adw-inspector-page-private.h new file mode 120000 index 0000000..a8d36e3 --- /dev/null +++ b/libadwaita/libadwaita/adw-inspector-page-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-inspector-page-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-inspector-page.c b/libadwaita/libadwaita/adw-inspector-page.c new file mode 120000 index 0000000..b13808e --- /dev/null +++ b/libadwaita/libadwaita/adw-inspector-page.c @@ -0,0 +1 @@ +../../upstream/src/adw-inspector-page.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-inspector-page.ui b/libadwaita/libadwaita/adw-inspector-page.ui new file mode 120000 index 0000000..254cf55 --- /dev/null +++ b/libadwaita/libadwaita/adw-inspector-page.ui @@ -0,0 +1 @@ +../../upstream/src/adw-inspector-page.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-leaflet.c b/libadwaita/libadwaita/adw-leaflet.c new file mode 120000 index 0000000..541e873 --- /dev/null +++ b/libadwaita/libadwaita/adw-leaflet.c @@ -0,0 +1 @@ +../../upstream/src/adw-leaflet.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-leaflet.h b/libadwaita/libadwaita/adw-leaflet.h new file mode 120000 index 0000000..350d019 --- /dev/null +++ b/libadwaita/libadwaita/adw-leaflet.h @@ -0,0 +1 @@ +../../upstream/src/adw-leaflet.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-length-unit.c b/libadwaita/libadwaita/adw-length-unit.c new file mode 120000 index 0000000..995e7f2 --- /dev/null +++ b/libadwaita/libadwaita/adw-length-unit.c @@ -0,0 +1 @@ +../../upstream/src/adw-length-unit.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-length-unit.h b/libadwaita/libadwaita/adw-length-unit.h new file mode 120000 index 0000000..8763abc --- /dev/null +++ b/libadwaita/libadwaita/adw-length-unit.h @@ -0,0 +1 @@ +../../upstream/src/adw-length-unit.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-main-private.h b/libadwaita/libadwaita/adw-main-private.h new file mode 120000 index 0000000..783c1c0 --- /dev/null +++ b/libadwaita/libadwaita/adw-main-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-main-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-main.c b/libadwaita/libadwaita/adw-main.c new file mode 120000 index 0000000..f26b371 --- /dev/null +++ b/libadwaita/libadwaita/adw-main.c @@ -0,0 +1 @@ +../../upstream/src/adw-main.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-main.h b/libadwaita/libadwaita/adw-main.h new file mode 120000 index 0000000..9a2ef80 --- /dev/null +++ b/libadwaita/libadwaita/adw-main.h @@ -0,0 +1 @@ +../../upstream/src/adw-main.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-marshalers.c b/libadwaita/libadwaita/adw-marshalers.c new file mode 100644 index 0000000..94c8a9d --- /dev/null +++ b/libadwaita/libadwaita/adw-marshalers.c @@ -0,0 +1,706 @@ +/* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ +#include "adw-marshalers.h" + +#include + +#ifdef G_ENABLE_DEBUG +#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) +#define g_marshal_value_peek_char(v) g_value_get_schar (v) +#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) +#define g_marshal_value_peek_int(v) g_value_get_int (v) +#define g_marshal_value_peek_uint(v) g_value_get_uint (v) +#define g_marshal_value_peek_long(v) g_value_get_long (v) +#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) +#define g_marshal_value_peek_int64(v) g_value_get_int64 (v) +#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) +#define g_marshal_value_peek_enum(v) g_value_get_enum (v) +#define g_marshal_value_peek_flags(v) g_value_get_flags (v) +#define g_marshal_value_peek_float(v) g_value_get_float (v) +#define g_marshal_value_peek_double(v) g_value_get_double (v) +#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) +#define g_marshal_value_peek_param(v) g_value_get_param (v) +#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) +#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) +#define g_marshal_value_peek_object(v) g_value_get_object (v) +#define g_marshal_value_peek_variant(v) g_value_get_variant (v) +#else /* !G_ENABLE_DEBUG */ +/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. + * Do not access GValues directly in your code. Instead, use the + * g_value_get_*() functions + */ +#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int +#define g_marshal_value_peek_char(v) (v)->data[0].v_int +#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint +#define g_marshal_value_peek_int(v) (v)->data[0].v_int +#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint +#define g_marshal_value_peek_long(v) (v)->data[0].v_long +#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 +#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 +#define g_marshal_value_peek_enum(v) (v)->data[0].v_long +#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_float(v) (v)->data[0].v_float +#define g_marshal_value_peek_double(v) (v)->data[0].v_double +#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer +#endif /* !G_ENABLE_DEBUG */ + +/* BOOLEAN:OBJECT (../src/adw-marshalers.list:28) */ +void +adw_marshal_BOOLEAN__OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT) (gpointer data1, + gpointer arg1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_BOOLEAN__OBJECT callback; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + data2); + + g_value_set_boolean (return_value, v_return); +} + +void +adw_marshal_BOOLEAN__OBJECTv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT) (gpointer data1, + gpointer arg1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_BOOLEAN__OBJECT callback; + gboolean v_return; + gpointer arg0; + va_list args_copy; + + va_copy (args_copy, args); + arg0 = (gpointer) va_arg (args_copy, gpointer); + if (arg0 != NULL) + arg0 = g_object_ref (arg0); + va_end (args_copy); + + g_return_if_fail (return_value != NULL); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = instance; + } + else + { + data1 = instance; + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + arg0, + data2); + if (arg0 != NULL) + g_object_unref (arg0); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:STRING (../src/adw-marshalers.list:29) */ +void +adw_marshal_BOOLEAN__STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__STRING) (gpointer data1, + gpointer arg1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_BOOLEAN__STRING callback; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__STRING) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_string (param_values + 1), + data2); + + g_value_set_boolean (return_value, v_return); +} + +void +adw_marshal_BOOLEAN__STRINGv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__STRING) (gpointer data1, + gpointer arg1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_BOOLEAN__STRING callback; + gboolean v_return; + gpointer arg0; + va_list args_copy; + + va_copy (args_copy, args); + arg0 = (gpointer) va_arg (args_copy, gpointer); + if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) + arg0 = g_strdup (arg0); + va_end (args_copy); + + g_return_if_fail (return_value != NULL); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = instance; + } + else + { + data1 = instance; + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__STRING) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + arg0, + data2); + if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) + g_free (arg0); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:VOID (../src/adw-marshalers.list:30) */ +void +adw_marshal_BOOLEAN__VOID (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__VOID) (gpointer data1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_BOOLEAN__VOID callback; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 1); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__VOID) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + data2); + + g_value_set_boolean (return_value, v_return); +} + +void +adw_marshal_BOOLEAN__VOIDv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__VOID) (gpointer data1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_BOOLEAN__VOID callback; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = instance; + } + else + { + data1 = instance; + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__VOID) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + data2); + + + g_value_set_boolean (return_value, v_return); +} + +/* INT:POINTER (../src/adw-marshalers.list:31) */ +void +adw_marshal_INT__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gint (*GMarshalFunc_INT__POINTER) (gpointer data1, + gpointer arg1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_INT__POINTER callback; + gint v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_INT__POINTER) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_pointer (param_values + 1), + data2); + + g_value_set_int (return_value, v_return); +} + +void +adw_marshal_INT__POINTERv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types) +{ + typedef gint (*GMarshalFunc_INT__POINTER) (gpointer data1, + gpointer arg1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_INT__POINTER callback; + gint v_return; + gpointer arg0; + va_list args_copy; + + va_copy (args_copy, args); + arg0 = (gpointer) va_arg (args_copy, gpointer); + va_end (args_copy); + + g_return_if_fail (return_value != NULL); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = instance; + } + else + { + data1 = instance; + data2 = closure->data; + } + callback = (GMarshalFunc_INT__POINTER) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + arg0, + data2); + + + g_value_set_int (return_value, v_return); +} + +/* OBJECT:VOID (../src/adw-marshalers.list:32) */ +void +adw_marshal_OBJECT__VOID (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef GObject* (*GMarshalFunc_OBJECT__VOID) (gpointer data1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_OBJECT__VOID callback; + GObject* v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 1); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_OBJECT__VOID) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + data2); + + g_value_take_object (return_value, v_return); +} + +void +adw_marshal_OBJECT__VOIDv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types) +{ + typedef GObject* (*GMarshalFunc_OBJECT__VOID) (gpointer data1, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_OBJECT__VOID callback; + GObject* v_return; + + g_return_if_fail (return_value != NULL); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = instance; + } + else + { + data1 = instance; + data2 = closure->data; + } + callback = (GMarshalFunc_OBJECT__VOID) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + data2); + + + g_value_take_object (return_value, v_return); +} + +/* VOID:DOUBLE,DOUBLE (../src/adw-marshalers.list:35) */ +void +adw_marshal_VOID__DOUBLE_DOUBLE (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__DOUBLE_DOUBLE) (gpointer data1, + gdouble arg1, + gdouble arg2, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_VOID__DOUBLE_DOUBLE callback; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__DOUBLE_DOUBLE) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_double (param_values + 1), + g_marshal_value_peek_double (param_values + 2), + data2); +} + +void +adw_marshal_VOID__DOUBLE_DOUBLEv (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types) +{ + typedef void (*GMarshalFunc_VOID__DOUBLE_DOUBLE) (gpointer data1, + gdouble arg1, + gdouble arg2, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_VOID__DOUBLE_DOUBLE callback; + gdouble arg0; + gdouble arg1; + va_list args_copy; + + va_copy (args_copy, args); + arg0 = (gdouble) va_arg (args_copy, gdouble); + arg1 = (gdouble) va_arg (args_copy, gdouble); + va_end (args_copy); + + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = instance; + } + else + { + data1 = instance; + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__DOUBLE_DOUBLE) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + arg0, + arg1, + data2); + +} + +/* VOID:DOUBLE,UINT (../src/adw-marshalers.list:36) */ +void +adw_marshal_VOID__DOUBLE_UINT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__DOUBLE_UINT) (gpointer data1, + gdouble arg1, + guint arg2, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_VOID__DOUBLE_UINT callback; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__DOUBLE_UINT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_double (param_values + 1), + g_marshal_value_peek_uint (param_values + 2), + data2); +} + +void +adw_marshal_VOID__DOUBLE_UINTv (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types) +{ + typedef void (*GMarshalFunc_VOID__DOUBLE_UINT) (gpointer data1, + gdouble arg1, + guint arg2, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_VOID__DOUBLE_UINT callback; + gdouble arg0; + guint arg1; + va_list args_copy; + + va_copy (args_copy, args); + arg0 = (gdouble) va_arg (args_copy, gdouble); + arg1 = (guint) va_arg (args_copy, guint); + va_end (args_copy); + + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = instance; + } + else + { + data1 = instance; + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__DOUBLE_UINT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + arg0, + arg1, + data2); + +} + +/* VOID:OBJECT,INT (../src/adw-marshalers.list:40) */ +void +adw_marshal_VOID__OBJECT_INT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__OBJECT_INT) (gpointer data1, + gpointer arg1, + gint arg2, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_VOID__OBJECT_INT callback; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__OBJECT_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_int (param_values + 2), + data2); +} + +void +adw_marshal_VOID__OBJECT_INTv (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types) +{ + typedef void (*GMarshalFunc_VOID__OBJECT_INT) (gpointer data1, + gpointer arg1, + gint arg2, + gpointer data2); + GCClosure *cc = (GCClosure *) closure; + gpointer data1, data2; + GMarshalFunc_VOID__OBJECT_INT callback; + gpointer arg0; + gint arg1; + va_list args_copy; + + va_copy (args_copy, args); + arg0 = (gpointer) va_arg (args_copy, gpointer); + if (arg0 != NULL) + arg0 = g_object_ref (arg0); + arg1 = (gint) va_arg (args_copy, gint); + va_end (args_copy); + + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = instance; + } + else + { + data1 = instance; + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__OBJECT_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + arg0, + arg1, + data2); + if (arg0 != NULL) + g_object_unref (arg0); +} + diff --git a/libadwaita/libadwaita/adw-marshalers.h b/libadwaita/libadwaita/adw-marshalers.h new file mode 100644 index 0000000..e6f3e46 --- /dev/null +++ b/libadwaita/libadwaita/adw-marshalers.h @@ -0,0 +1,177 @@ +/* This file is generated by glib-genmarshal, do not modify it. This code is licensed under the same license as the containing project. Note that it links to GLib, so must comply with the LGPL linking clauses. */ +#pragma once + +#include + +G_BEGIN_DECLS + +/* BOOLEAN:OBJECT (../src/adw-marshalers.list:28) */ +extern +void adw_marshal_BOOLEAN__OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +extern +void adw_marshal_BOOLEAN__OBJECTv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types); + +/* BOOLEAN:STRING (../src/adw-marshalers.list:29) */ +extern +void adw_marshal_BOOLEAN__STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +extern +void adw_marshal_BOOLEAN__STRINGv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types); + +/* BOOLEAN:VOID (../src/adw-marshalers.list:30) */ +extern +void adw_marshal_BOOLEAN__VOID (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +extern +void adw_marshal_BOOLEAN__VOIDv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types); + +/* INT:POINTER (../src/adw-marshalers.list:31) */ +extern +void adw_marshal_INT__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +extern +void adw_marshal_INT__POINTERv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types); + +/* OBJECT:VOID (../src/adw-marshalers.list:32) */ +extern +void adw_marshal_OBJECT__VOID (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +extern +void adw_marshal_OBJECT__VOIDv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types); + +/* VOID:BOOLEAN (../src/adw-marshalers.list:33) */ +#define adw_marshal_VOID__BOOLEAN g_cclosure_marshal_VOID__BOOLEAN +#define adw_marshal_VOID__BOOLEANv g_cclosure_marshal_VOID__BOOLEANv + +/* VOID:DOUBLE (../src/adw-marshalers.list:34) */ +#define adw_marshal_VOID__DOUBLE g_cclosure_marshal_VOID__DOUBLE +#define adw_marshal_VOID__DOUBLEv g_cclosure_marshal_VOID__DOUBLEv + +/* VOID:DOUBLE,DOUBLE (../src/adw-marshalers.list:35) */ +extern +void adw_marshal_VOID__DOUBLE_DOUBLE (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +extern +void adw_marshal_VOID__DOUBLE_DOUBLEv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types); + +/* VOID:DOUBLE,UINT (../src/adw-marshalers.list:36) */ +extern +void adw_marshal_VOID__DOUBLE_UINT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +extern +void adw_marshal_VOID__DOUBLE_UINTv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types); + +/* VOID:ENUM (../src/adw-marshalers.list:37) */ +#define adw_marshal_VOID__ENUM g_cclosure_marshal_VOID__ENUM +#define adw_marshal_VOID__ENUMv g_cclosure_marshal_VOID__ENUMv + +/* VOID:INT (../src/adw-marshalers.list:38) */ +#define adw_marshal_VOID__INT g_cclosure_marshal_VOID__INT +#define adw_marshal_VOID__INTv g_cclosure_marshal_VOID__INTv + +/* VOID:OBJECT (../src/adw-marshalers.list:39) */ +#define adw_marshal_VOID__OBJECT g_cclosure_marshal_VOID__OBJECT +#define adw_marshal_VOID__OBJECTv g_cclosure_marshal_VOID__OBJECTv + +/* VOID:OBJECT,INT (../src/adw-marshalers.list:40) */ +extern +void adw_marshal_VOID__OBJECT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +extern +void adw_marshal_VOID__OBJECT_INTv (GClosure *closure, + GValue *return_value, + gpointer instance, + va_list args, + gpointer marshal_data, + int n_params, + GType *param_types); + +/* VOID:STRING (../src/adw-marshalers.list:41) */ +#define adw_marshal_VOID__STRING g_cclosure_marshal_VOID__STRING +#define adw_marshal_VOID__STRINGv g_cclosure_marshal_VOID__STRINGv + +/* VOID:UINT (../src/adw-marshalers.list:42) */ +#define adw_marshal_VOID__UINT g_cclosure_marshal_VOID__UINT +#define adw_marshal_VOID__UINTv g_cclosure_marshal_VOID__UINTv + +/* VOID:VOID (../src/adw-marshalers.list:43) */ +#define adw_marshal_VOID__VOID g_cclosure_marshal_VOID__VOID +#define adw_marshal_VOID__VOIDv g_cclosure_marshal_VOID__VOIDv + + +G_END_DECLS diff --git a/libadwaita/libadwaita/adw-message-dialog.c b/libadwaita/libadwaita/adw-message-dialog.c new file mode 120000 index 0000000..60621be --- /dev/null +++ b/libadwaita/libadwaita/adw-message-dialog.c @@ -0,0 +1 @@ +../../upstream/src/adw-message-dialog.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-message-dialog.h b/libadwaita/libadwaita/adw-message-dialog.h new file mode 120000 index 0000000..7727eb1 --- /dev/null +++ b/libadwaita/libadwaita/adw-message-dialog.h @@ -0,0 +1 @@ +../../upstream/src/adw-message-dialog.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-message-dialog.ui b/libadwaita/libadwaita/adw-message-dialog.ui new file mode 120000 index 0000000..4555e3d --- /dev/null +++ b/libadwaita/libadwaita/adw-message-dialog.ui @@ -0,0 +1 @@ +../../upstream/src/adw-message-dialog.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-navigation-direction.c b/libadwaita/libadwaita/adw-navigation-direction.c new file mode 120000 index 0000000..8dcd44a --- /dev/null +++ b/libadwaita/libadwaita/adw-navigation-direction.c @@ -0,0 +1 @@ +../../upstream/src/adw-navigation-direction.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-navigation-direction.h b/libadwaita/libadwaita/adw-navigation-direction.h new file mode 120000 index 0000000..808cc20 --- /dev/null +++ b/libadwaita/libadwaita/adw-navigation-direction.h @@ -0,0 +1 @@ +../../upstream/src/adw-navigation-direction.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-navigation-split-view.c b/libadwaita/libadwaita/adw-navigation-split-view.c new file mode 120000 index 0000000..7975307 --- /dev/null +++ b/libadwaita/libadwaita/adw-navigation-split-view.c @@ -0,0 +1 @@ +../../upstream/src/adw-navigation-split-view.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-navigation-split-view.h b/libadwaita/libadwaita/adw-navigation-split-view.h new file mode 120000 index 0000000..6442f6d --- /dev/null +++ b/libadwaita/libadwaita/adw-navigation-split-view.h @@ -0,0 +1 @@ +../../upstream/src/adw-navigation-split-view.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-navigation-view-private.h b/libadwaita/libadwaita/adw-navigation-view-private.h new file mode 120000 index 0000000..b90f190 --- /dev/null +++ b/libadwaita/libadwaita/adw-navigation-view-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-navigation-view-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-navigation-view.c b/libadwaita/libadwaita/adw-navigation-view.c new file mode 120000 index 0000000..75eee0d --- /dev/null +++ b/libadwaita/libadwaita/adw-navigation-view.c @@ -0,0 +1 @@ +../../upstream/src/adw-navigation-view.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-navigation-view.h b/libadwaita/libadwaita/adw-navigation-view.h new file mode 120000 index 0000000..bf772ff --- /dev/null +++ b/libadwaita/libadwaita/adw-navigation-view.h @@ -0,0 +1 @@ +../../upstream/src/adw-navigation-view.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-overlay-split-view.c b/libadwaita/libadwaita/adw-overlay-split-view.c new file mode 120000 index 0000000..ba6050c --- /dev/null +++ b/libadwaita/libadwaita/adw-overlay-split-view.c @@ -0,0 +1 @@ +../../upstream/src/adw-overlay-split-view.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-overlay-split-view.h b/libadwaita/libadwaita/adw-overlay-split-view.h new file mode 120000 index 0000000..96ed046 --- /dev/null +++ b/libadwaita/libadwaita/adw-overlay-split-view.h @@ -0,0 +1 @@ +../../upstream/src/adw-overlay-split-view.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-password-entry-row.c b/libadwaita/libadwaita/adw-password-entry-row.c new file mode 120000 index 0000000..cbeb6d0 --- /dev/null +++ b/libadwaita/libadwaita/adw-password-entry-row.c @@ -0,0 +1 @@ +../../upstream/src/adw-password-entry-row.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-password-entry-row.h b/libadwaita/libadwaita/adw-password-entry-row.h new file mode 120000 index 0000000..b4afdca --- /dev/null +++ b/libadwaita/libadwaita/adw-password-entry-row.h @@ -0,0 +1 @@ +../../upstream/src/adw-password-entry-row.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-dialog.c b/libadwaita/libadwaita/adw-preferences-dialog.c new file mode 120000 index 0000000..0d866be --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-dialog.c @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-dialog.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-dialog.h b/libadwaita/libadwaita/adw-preferences-dialog.h new file mode 120000 index 0000000..7a398ca --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-dialog.h @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-dialog.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-dialog.ui b/libadwaita/libadwaita/adw-preferences-dialog.ui new file mode 120000 index 0000000..1e51a67 --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-dialog.ui @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-dialog.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-group-private.h b/libadwaita/libadwaita/adw-preferences-group-private.h new file mode 120000 index 0000000..7f64c74 --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-group-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-group-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-group.c b/libadwaita/libadwaita/adw-preferences-group.c new file mode 120000 index 0000000..d6b01bf --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-group.c @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-group.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-group.h b/libadwaita/libadwaita/adw-preferences-group.h new file mode 120000 index 0000000..2051857 --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-group.h @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-group.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-group.ui b/libadwaita/libadwaita/adw-preferences-group.ui new file mode 120000 index 0000000..b14a915 --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-group.ui @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-group.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-page-private.h b/libadwaita/libadwaita/adw-preferences-page-private.h new file mode 120000 index 0000000..703afc4 --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-page-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-page-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-page.c b/libadwaita/libadwaita/adw-preferences-page.c new file mode 120000 index 0000000..07569a1 --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-page.c @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-page.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-page.h b/libadwaita/libadwaita/adw-preferences-page.h new file mode 120000 index 0000000..231bbc5 --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-page.h @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-page.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-page.ui b/libadwaita/libadwaita/adw-preferences-page.ui new file mode 120000 index 0000000..68b609d --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-page.ui @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-page.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-row.c b/libadwaita/libadwaita/adw-preferences-row.c new file mode 120000 index 0000000..7f16df9 --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-row.c @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-row.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-row.h b/libadwaita/libadwaita/adw-preferences-row.h new file mode 120000 index 0000000..aa62c0f --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-row.h @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-row.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-window.c b/libadwaita/libadwaita/adw-preferences-window.c new file mode 120000 index 0000000..dd831da --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-window.c @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-window.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-window.h b/libadwaita/libadwaita/adw-preferences-window.h new file mode 120000 index 0000000..f8ca063 --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-window.h @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-window.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-preferences-window.ui b/libadwaita/libadwaita/adw-preferences-window.ui new file mode 120000 index 0000000..00b712e --- /dev/null +++ b/libadwaita/libadwaita/adw-preferences-window.ui @@ -0,0 +1 @@ +../../upstream/src/adw-preferences-window.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-public-types.c b/libadwaita/libadwaita/adw-public-types.c new file mode 100644 index 0000000..45f9447 --- /dev/null +++ b/libadwaita/libadwaita/adw-public-types.c @@ -0,0 +1,169 @@ +/* This file was generated by gen-public-types.py, do not edit it. */ + +#include "adw-about-dialog.h" +#include "adw-about-window.h" +#include "adw-action-row.h" +#include "adw-alert-dialog.h" +#include "adw-animation.h" +#include "adw-animation-target.h" +#include "adw-animation-util.h" +#include "adw-application.h" +#include "adw-application-window.h" +#include "adw-avatar.h" +#include "adw-banner.h" +#include "adw-bin.h" +#include "adw-breakpoint.h" +#include "adw-breakpoint-bin.h" +#include "adw-button-content.h" +#include "adw-carousel.h" +#include "adw-carousel-indicator-dots.h" +#include "adw-carousel-indicator-lines.h" +#include "adw-clamp.h" +#include "adw-clamp-layout.h" +#include "adw-clamp-scrollable.h" +#include "adw-combo-row.h" +#include "adw-dialog.h" +#include "adw-easing.h" +#include "adw-entry-row.h" +#include "adw-enum-list-model.h" +#include "adw-expander-row.h" +#include "adw-flap.h" +#include "adw-fold-threshold-policy.h" +#include "adw-header-bar.h" +#include "adw-leaflet.h" +#include "adw-length-unit.h" +#include "adw-main.h" +#include "adw-message-dialog.h" +#include "adw-navigation-direction.h" +#include "adw-navigation-split-view.h" +#include "adw-navigation-view.h" +#include "adw-overlay-split-view.h" +#include "adw-password-entry-row.h" +#include "adw-preferences-dialog.h" +#include "adw-preferences-group.h" +#include "adw-preferences-page.h" +#include "adw-preferences-row.h" +#include "adw-preferences-window.h" +#include "adw-spin-row.h" +#include "adw-split-button.h" +#include "adw-spring-animation.h" +#include "adw-spring-params.h" +#include "adw-squeezer.h" +#include "adw-status-page.h" +#include "adw-style-manager.h" +#include "adw-swipe-tracker.h" +#include "adw-swipeable.h" +#include "adw-switch-row.h" +#include "adw-tab-bar.h" +#include "adw-tab-button.h" +#include "adw-tab-overview.h" +#include "adw-tab-view.h" +#include "adw-timed-animation.h" +#include "adw-toast.h" +#include "adw-toast-overlay.h" +#include "adw-toolbar-view.h" +#include "adw-view-stack.h" +#include "adw-view-switcher.h" +#include "adw-view-switcher-bar.h" +#include "adw-view-switcher-title.h" +#include "adw-window.h" +#include "adw-window-title.h" +#include "adw-version.h" +#include "adw-enums.h" +#include "adw-main-private.h" + +void +adw_init_public_types (void) +{ + g_type_ensure (ADW_TYPE_ABOUT_DIALOG); + g_type_ensure (ADW_TYPE_ABOUT_WINDOW); + g_type_ensure (ADW_TYPE_ACTION_ROW); + g_type_ensure (ADW_TYPE_ALERT_DIALOG); + g_type_ensure (ADW_TYPE_ANIMATION); + g_type_ensure (ADW_TYPE_ANIMATION_STATE); + g_type_ensure (ADW_TYPE_ANIMATION_TARGET); + g_type_ensure (ADW_TYPE_APPLICATION); + g_type_ensure (ADW_TYPE_APPLICATION_WINDOW); + g_type_ensure (ADW_TYPE_AVATAR); + g_type_ensure (ADW_TYPE_BANNER); + g_type_ensure (ADW_TYPE_BIN); + g_type_ensure (ADW_TYPE_BREAKPOINT); + g_type_ensure (ADW_TYPE_BREAKPOINT_BIN); + g_type_ensure (ADW_TYPE_BREAKPOINT_CONDITION); + g_type_ensure (ADW_TYPE_BREAKPOINT_CONDITION_LENGTH_TYPE); + g_type_ensure (ADW_TYPE_BREAKPOINT_CONDITION_RATIO_TYPE); + g_type_ensure (ADW_TYPE_BUTTON_CONTENT); + g_type_ensure (ADW_TYPE_CALLBACK_ANIMATION_TARGET); + g_type_ensure (ADW_TYPE_CAROUSEL); + g_type_ensure (ADW_TYPE_CAROUSEL_INDICATOR_DOTS); + g_type_ensure (ADW_TYPE_CAROUSEL_INDICATOR_LINES); + g_type_ensure (ADW_TYPE_CENTERING_POLICY); + g_type_ensure (ADW_TYPE_CLAMP); + g_type_ensure (ADW_TYPE_CLAMP_LAYOUT); + g_type_ensure (ADW_TYPE_CLAMP_SCROLLABLE); + g_type_ensure (ADW_TYPE_COLOR_SCHEME); + g_type_ensure (ADW_TYPE_COMBO_ROW); + g_type_ensure (ADW_TYPE_DIALOG); + g_type_ensure (ADW_TYPE_DIALOG_PRESENTATION_MODE); + g_type_ensure (ADW_TYPE_EASING); + g_type_ensure (ADW_TYPE_ENTRY_ROW); + g_type_ensure (ADW_TYPE_ENUM_LIST_ITEM); + g_type_ensure (ADW_TYPE_ENUM_LIST_MODEL); + g_type_ensure (ADW_TYPE_EXPANDER_ROW); + g_type_ensure (ADW_TYPE_FLAP); + g_type_ensure (ADW_TYPE_FLAP_FOLD_POLICY); + g_type_ensure (ADW_TYPE_FLAP_TRANSITION_TYPE); + g_type_ensure (ADW_TYPE_FOLD_THRESHOLD_POLICY); + g_type_ensure (ADW_TYPE_HEADER_BAR); + g_type_ensure (ADW_TYPE_LEAFLET); + g_type_ensure (ADW_TYPE_LEAFLET_PAGE); + g_type_ensure (ADW_TYPE_LEAFLET_TRANSITION_TYPE); + g_type_ensure (ADW_TYPE_LENGTH_UNIT); + g_type_ensure (ADW_TYPE_MESSAGE_DIALOG); + g_type_ensure (ADW_TYPE_NAVIGATION_DIRECTION); + g_type_ensure (ADW_TYPE_NAVIGATION_PAGE); + g_type_ensure (ADW_TYPE_NAVIGATION_SPLIT_VIEW); + g_type_ensure (ADW_TYPE_NAVIGATION_VIEW); + g_type_ensure (ADW_TYPE_OVERLAY_SPLIT_VIEW); + g_type_ensure (ADW_TYPE_PASSWORD_ENTRY_ROW); + g_type_ensure (ADW_TYPE_PREFERENCES_DIALOG); + g_type_ensure (ADW_TYPE_PREFERENCES_GROUP); + g_type_ensure (ADW_TYPE_PREFERENCES_PAGE); + g_type_ensure (ADW_TYPE_PREFERENCES_ROW); + g_type_ensure (ADW_TYPE_PREFERENCES_WINDOW); + g_type_ensure (ADW_TYPE_PROPERTY_ANIMATION_TARGET); + g_type_ensure (ADW_TYPE_RESPONSE_APPEARANCE); + g_type_ensure (ADW_TYPE_SPIN_ROW); + g_type_ensure (ADW_TYPE_SPLIT_BUTTON); + g_type_ensure (ADW_TYPE_SPRING_ANIMATION); + g_type_ensure (ADW_TYPE_SPRING_PARAMS); + g_type_ensure (ADW_TYPE_SQUEEZER); + g_type_ensure (ADW_TYPE_SQUEEZER_PAGE); + g_type_ensure (ADW_TYPE_SQUEEZER_TRANSITION_TYPE); + g_type_ensure (ADW_TYPE_STATUS_PAGE); + g_type_ensure (ADW_TYPE_STYLE_MANAGER); + g_type_ensure (ADW_TYPE_SWIPEABLE); + g_type_ensure (ADW_TYPE_SWIPE_TRACKER); + g_type_ensure (ADW_TYPE_SWITCH_ROW); + g_type_ensure (ADW_TYPE_TAB_BAR); + g_type_ensure (ADW_TYPE_TAB_BUTTON); + g_type_ensure (ADW_TYPE_TAB_OVERVIEW); + g_type_ensure (ADW_TYPE_TAB_PAGE); + g_type_ensure (ADW_TYPE_TAB_VIEW); + g_type_ensure (ADW_TYPE_TAB_VIEW_SHORTCUTS); + g_type_ensure (ADW_TYPE_TIMED_ANIMATION); + g_type_ensure (ADW_TYPE_TOAST); + g_type_ensure (ADW_TYPE_TOAST_OVERLAY); + g_type_ensure (ADW_TYPE_TOAST_PRIORITY); + g_type_ensure (ADW_TYPE_TOOLBAR_STYLE); + g_type_ensure (ADW_TYPE_TOOLBAR_VIEW); + g_type_ensure (ADW_TYPE_VIEW_STACK); + g_type_ensure (ADW_TYPE_VIEW_STACK_PAGE); + g_type_ensure (ADW_TYPE_VIEW_STACK_PAGES); + g_type_ensure (ADW_TYPE_VIEW_SWITCHER); + g_type_ensure (ADW_TYPE_VIEW_SWITCHER_BAR); + g_type_ensure (ADW_TYPE_VIEW_SWITCHER_POLICY); + g_type_ensure (ADW_TYPE_VIEW_SWITCHER_TITLE); + g_type_ensure (ADW_TYPE_WINDOW); + g_type_ensure (ADW_TYPE_WINDOW_TITLE); +} diff --git a/libadwaita/libadwaita/adw-resources.c b/libadwaita/libadwaita/adw-resources.c new file mode 100644 index 0000000..04655e6 --- /dev/null +++ b/libadwaita/libadwaita/adw-resources.c @@ -0,0 +1,6601 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.adw"), aligned (sizeof(void *) > 8 ? sizeof(void *) : 8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[102674]; const double alignment; void * const ptr;} adw_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\360\004\000\000\000\000\000\050\054\000\000\000" + "\000\000\000\000\001\000\000\000\003\000\000\000\004\000\000\000" + "\005\000\000\000\007\000\000\000\010\000\000\000\011\000\000\000" + "\012\000\000\000\013\000\000\000\013\000\000\000\013\000\000\000" + "\016\000\000\000\020\000\000\000\020\000\000\000\020\000\000\000" + "\022\000\000\000\023\000\000\000\023\000\000\000\024\000\000\000" + "\024\000\000\000\027\000\000\000\027\000\000\000\031\000\000\000" + "\034\000\000\000\035\000\000\000\035\000\000\000\035\000\000\000" + "\040\000\000\000\041\000\000\000\041\000\000\000\041\000\000\000" + "\042\000\000\000\043\000\000\000\044\000\000\000\047\000\000\000" + "\050\000\000\000\051\000\000\000\052\000\000\000\052\000\000\000" + "\052\000\000\000\054\000\000\000\054\000\000\000\054\000\000\000" + "\174\216\155\134\041\000\000\000\360\004\000\000\021\000\166\000" + "\010\005\000\000\242\010\000\000\135\177\246\371\041\000\000\000" + "\242\010\000\000\025\000\166\000\270\010\000\000\026\017\000\000" + "\105\112\053\131\003\000\000\000\026\017\000\000\006\000\114\000" + "\034\017\000\000\040\017\000\000\332\351\234\111\034\000\000\000" + "\040\017\000\000\010\000\114\000\050\017\000\000\060\017\000\000" + "\213\056\346\030\041\000\000\000\060\017\000\000\031\000\166\000" + "\120\017\000\000\367\043\000\000\254\034\030\335\045\000\000\000" + "\367\043\000\000\035\000\166\000\030\044\000\000\335\051\000\000" + "\170\012\334\212\045\000\000\000\335\051\000\000\034\000\166\000" + "\000\052\000\000\127\053\000\000\161\155\134\124\041\000\000\000" + "\127\053\000\000\023\000\166\000\160\053\000\000\333\062\000\000" + "\012\277\112\347\041\000\000\000\333\062\000\000\022\000\166\000" + "\360\062\000\000\375\072\000\000\163\050\067\224\041\000\000\000" + "\375\072\000\000\031\000\166\000\030\073\000\000\137\122\000\000" + "\234\337\334\123\045\000\000\000\137\122\000\000\033\000\166\000" + "\200\122\000\000\252\123\000\000\037\347\345\121\036\000\000\000" + "\252\123\000\000\036\000\166\000\310\123\000\000\102\126\000\000" + "\373\100\345\044\036\000\000\000\102\126\000\000\032\000\166\000" + "\140\126\000\000\213\130\000\000\343\171\141\362\041\000\000\000" + "\213\130\000\000\023\000\166\000\240\130\000\000\103\134\000\000" + "\124\244\152\260\041\000\000\000\103\134\000\000\023\000\166\000" + "\130\134\000\000\302\240\000\000\074\236\273\053\041\000\000\000" + "\302\240\000\000\023\000\166\000\330\240\000\000\320\345\000\000" + "\067\351\015\137\041\000\000\000\320\345\000\000\023\000\166\000" + "\350\345\000\000\273\370\000\000\363\226\135\135\041\000\000\000" + "\273\370\000\000\020\000\166\000\320\370\000\000\077\011\001\000" + "\204\076\102\346\041\000\000\000\077\011\001\000\024\000\166\000" + "\130\011\001\000\163\031\001\000\266\171\044\344\041\000\000\000" + "\163\031\001\000\033\000\166\000\220\031\001\000\217\045\001\000" + "\030\361\264\227\041\000\000\000\217\045\001\000\023\000\166\000" + "\250\045\001\000\021\056\001\000\210\072\014\366\045\000\000\000" + "\021\056\001\000\041\000\166\000\070\056\001\000\011\060\001\000" + "\070\113\202\275\041\000\000\000\011\060\001\000\023\000\166\000" + "\040\060\001\000\065\075\001\000\236\150\112\314\041\000\000\000" + "\065\075\001\000\025\000\166\000\120\075\001\000\160\103\001\000" + "\002\207\347\217\045\000\000\000\160\103\001\000\032\000\166\000" + "\220\103\001\000\112\105\001\000\177\006\276\103\041\000\000\000" + "\112\105\001\000\021\000\166\000\140\105\001\000\111\121\001\000" + "\123\216\142\077\041\000\000\000\111\121\001\000\012\000\166\000" + "\130\121\001\000\000\135\001\000\357\366\243\351\041\000\000\000" + "\000\135\001\000\030\000\166\000\030\135\001\000\374\136\001\000" + "\260\267\044\060\037\000\000\000\374\136\001\000\006\000\114\000" + "\004\137\001\000\010\137\001\000\013\306\204\335\002\000\000\000" + "\010\137\001\000\011\000\114\000\024\137\001\000\034\137\001\000" + "\313\377\073\302\035\000\000\000\034\137\001\000\010\000\114\000" + "\044\137\001\000\064\137\001\000\113\120\220\013\050\000\000\000" + "\064\137\001\000\004\000\114\000\070\137\001\000\074\137\001\000" + "\320\077\170\107\036\000\000\000\074\137\001\000\037\000\166\000" + "\140\137\001\000\161\140\001\000\007\323\131\264\003\000\000\000" + "\161\140\001\000\003\000\114\000\164\140\001\000\334\140\001\000" + "\270\065\102\314\041\000\000\000\334\140\001\000\027\000\166\000" + "\370\140\001\000\214\144\001\000\165\321\071\266\041\000\000\000" + "\214\144\001\000\016\000\166\000\240\144\001\000\116\156\001\000" + "\306\334\302\016\036\000\000\000\116\156\001\000\034\000\166\000" + "\160\156\001\000\061\164\001\000\336\304\232\274\035\000\000\000" + "\061\164\001\000\007\000\114\000\070\164\001\000\114\164\001\000" + "\062\233\126\351\041\000\000\000\114\164\001\000\015\000\166\000" + "\140\164\001\000\142\171\001\000\273\240\235\230\041\000\000\000" + "\142\171\001\000\017\000\166\000\170\171\001\000\254\175\001\000" + "\324\265\002\000\377\377\377\377\254\175\001\000\001\000\114\000" + "\260\175\001\000\264\175\001\000\261\070\060\342\041\000\000\000" + "\264\175\001\000\020\000\166\000\310\175\001\000\230\206\001\000" + "\174\333\362\357\041\000\000\000\230\206\001\000\032\000\166\000" + "\270\206\001\000\031\212\001\000\250\113\304\066\041\000\000\000" + "\031\212\001\000\030\000\166\000\070\212\001\000\021\221\001\000" + "\141\144\167\055\164\141\142\055\142\165\164\164\157\156\056\165" + "\151\000\000\000\000\000\000\000\212\003\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\124\141\142" + "\102\165\164\164\157\156\042\040\160\141\162\145\156\164\075\042" + "\107\164\153\127\151\144\147\145\164\042\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\102\165\164\164\157\156\042\040\151\144\075\042" + "\142\165\164\164\157\156\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\164\157\157\154\164\151\160\055" + "\164\145\170\164\042\040\164\162\141\156\163\154\141\164\141\142" + "\154\145\075\042\171\145\163\042\076\126\151\145\167\040\117\160" + "\145\156\040\124\141\142\163\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\143\154\151\143\153\145\144\042\040\150\141\156\144\154\145\162" + "\075\042\143\154\151\143\153\145\144\137\143\142\042\040\163\167" + "\141\160\160\145\144\075\042\171\145\163\042\057\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151" + "\154\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\101\144\167\111\156\144\151\143\141\164\157\162\102" + "\151\156\042\040\151\144\075\042\151\156\144\151\143\141\164\157" + "\162\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\150\141\154\151\147\156\042\076\143\145\156\164\145" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\141\154\151" + "\147\156\042\076\143\145\156\164\145\162\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\117\166" + "\145\162\154\141\171\042\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\111\155\141\147\145\042\040\151\144\075\042\151\143\157\156\042" + "\057\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144" + "\040\164\171\160\145\075\042\157\166\145\162\154\141\171\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\114\141\142\145\154\042\040\151\144\075\042\154\141\142" + "\145\154\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\150\141\154\151\147\156\042\076\143\145\156\164" + "\145\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\152\165\163" + "\164\151\146\171\042\076\143\145\156\164\145\162\074\057\160\162" + "\157\160\145\162\164\171\076\074\163\164\171\154\145\076\074\143" + "\154\141\163\163\040\156\141\155\145\075\042\156\165\155\145\162" + "\151\143\042\057\076\074\057\163\164\171\154\145\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057" + "\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164" + "\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\163\164\171\154\145\076\074\143\154" + "\141\163\163\040\156\141\155\145\075\042\151\155\141\147\145\055" + "\142\165\164\164\157\156\042\057\076\074\057\163\164\171\154\145" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\164\145\155\160\154\141\164\145\076\074\057\151" + "\156\164\145\162\146\141\143\145\076\012\000\000\050\165\165\141" + "\171\051\141\144\167\055\151\156\163\160\145\143\164\157\162\055" + "\160\141\147\145\056\165\151\000\116\006\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\162\145\161\165\151\162" + "\145\163\040\154\151\142\075\042\154\151\142\141\144\167\141\151" + "\164\141\042\040\166\145\162\163\151\157\156\075\042\061\056\060" + "\042\057\076\074\164\145\155\160\154\141\164\145\040\143\154\141" + "\163\163\075\042\101\144\167\111\156\163\160\145\143\164\157\162" + "\120\141\147\145\042\040\160\141\162\145\156\164\075\042\101\144" + "\167\102\151\156\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\120" + "\162\145\146\145\162\145\156\143\145\163\120\141\147\145\042\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\101\144\167\120\162\145\146\145\162\145" + "\156\143\145\163\107\162\157\165\160\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\164\151\164\154\145" + "\042\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042" + "\171\145\163\042\076\123\171\163\164\145\155\040\101\160\160\145" + "\141\162\141\156\143\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\144\145\163\143\162\151\160\164\151\157\156\042\040\164\162" + "\141\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042" + "\076\117\166\145\162\162\151\144\145\040\163\145\164\164\151\156" + "\147\163\040\146\157\162\040\164\150\151\163\040\141\160\160\154" + "\151\143\141\164\151\157\156\056\040\124\150\145\171\040\167\151" + "\154\154\040\142\145\040\162\145\163\145\164\040\165\160\157\156" + "\040\143\154\157\163\151\156\147\040\164\150\145\040\151\156\163" + "\160\145\143\164\157\162\056\074\057\160\162\157\160\145\162\164" + "\171\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\101\144\167\123\167\151\164\143" + "\150\122\157\167\042\040\151\144\075\042\163\165\160\160\157\162" + "\164\137\143\157\154\157\162\137\163\143\150\145\155\145\163\137" + "\162\157\167\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\164\151\164\154\145\042\040\164\162\141\156" + "\163\154\141\164\141\142\154\145\075\042\171\145\163\042\076\123" + "\171\163\164\145\155\040\123\165\160\160\157\162\164\163\040\103" + "\157\154\157\162\040\123\143\150\145\155\145\163\074\057\160\162" + "\157\160\145\162\164\171\076\074\163\151\147\156\141\154\040\156" + "\141\155\145\075\042\156\157\164\151\146\171\072\072\141\143\164" + "\151\166\145\042\040\150\141\156\144\154\145\162\075\042\163\165" + "\160\160\157\162\164\137\143\157\154\157\162\137\163\143\150\145" + "\155\145\163\137\143\150\141\156\147\145\144\137\143\142\042\040" + "\163\167\141\160\160\145\144\075\042\171\145\163\042\057\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\101\144\167\103\157\155\142\157\122\157" + "\167\042\040\151\144\075\042\143\157\154\157\162\137\163\143\150" + "\145\155\145\137\162\157\167\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\164\151\164\154\145\042\040" + "\164\162\141\156\163\154\141\164\141\142\154\145\075\042\171\145" + "\163\042\076\120\162\145\146\145\162\162\145\144\040\103\157\154" + "\157\162\040\123\143\150\145\155\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\155\157\144\145\154\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\105\156\165" + "\155\114\151\163\164\115\157\144\145\154\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\145\156\165\155" + "\055\164\171\160\145\042\076\101\144\167\123\171\163\164\145\155" + "\103\157\154\157\162\123\143\150\145\155\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\145\170\160\162\145\163" + "\163\151\157\156\042\076\074\143\154\157\163\165\162\145\040\164" + "\171\160\145\075\042\147\143\150\141\162\141\162\162\141\171\042" + "\040\146\165\156\143\164\151\157\156\075\042\147\145\164\137\163" + "\171\163\164\145\155\137\143\157\154\157\162\137\163\143\150\145" + "\155\145\137\156\141\155\145\042\057\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\142\151\156\144\151\156\147\040\156\141" + "\155\145\075\042\163\145\156\163\151\164\151\166\145\042\076\074" + "\154\157\157\153\165\160\040\156\141\155\145\075\042\141\143\164" + "\151\166\145\042\076\163\165\160\160\157\162\164\137\143\157\154" + "\157\162\137\163\143\150\145\155\145\163\137\162\157\167\074\057" + "\154\157\157\153\165\160\076\074\057\142\151\156\144\151\156\147" + "\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042\156" + "\157\164\151\146\171\072\072\163\145\154\145\143\164\145\144\042" + "\040\150\141\156\144\154\145\162\075\042\143\157\154\157\162\137" + "\163\143\150\145\155\145\137\143\150\141\156\147\145\144\137\143" + "\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042" + "\057\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\123\167\151\164" + "\143\150\122\157\167\042\040\151\144\075\042\150\151\147\150\137" + "\143\157\156\164\162\141\163\164\137\162\157\167\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164\151" + "\164\154\145\042\040\164\162\141\156\163\154\141\164\141\142\154" + "\145\075\042\171\145\163\042\076\110\151\147\150\040\103\157\156" + "\164\162\141\163\164\074\057\160\162\157\160\145\162\164\171\076" + "\074\163\151\147\156\141\154\040\156\141\155\145\075\042\156\157" + "\164\151\146\171\072\072\141\143\164\151\166\145\042\040\150\141" + "\156\144\154\145\162\075\042\150\151\147\150\137\143\157\156\164" + "\162\141\163\164\137\143\150\141\156\147\145\144\137\143\142\042" + "\040\163\167\141\160\160\145\144\075\042\171\145\163\042\057\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\164\145\155\160\154\141\164\145" + "\076\074\057\151\156\164\145\162\146\141\143\145\076\012\000\000" + "\050\165\165\141\171\051\151\143\157\156\163\057\035\000\000\000" + "\101\144\167\141\151\164\141\057\002\000\000\000\041\000\000\000" + "\141\144\167\055\160\162\145\146\145\162\145\156\143\145\163\055" + "\144\151\141\154\157\147\056\165\151\000\000\000\000\000\000\000" + "\227\024\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\120\162\145\146\145\162\145\156\143\145\163" + "\104\151\141\154\157\147\042\040\160\141\162\145\156\164\075\042" + "\101\144\167\104\151\141\154\157\147\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\164\151\164\154\145" + "\042\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042" + "\171\145\163\042\076\120\162\145\146\145\162\145\156\143\145\163" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\157\156\164\145" + "\156\164\055\167\151\144\164\150\042\076\066\064\060\074\057\160" + "\162\157\160\145\162\164\171\076\074\163\164\171\154\145\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\160\162\145\146" + "\145\162\145\156\143\145\163\042\057\076\074\057\163\164\171\154" + "\145\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\101\144\167\124\157\141\163\164" + "\117\166\145\162\154\141\171\042\040\151\144\075\042\164\157\141" + "\163\164\137\157\166\145\162\154\141\171\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154" + "\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\116\141\166\151\147\141\164\151\157\156\126" + "\151\145\167\042\040\151\144\075\042\163\165\142\160\141\147\145" + "\163\137\156\141\166\137\166\151\145\167\042\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\116\141\166\151\147\141\164\151\157\156\120" + "\141\147\145\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\164\151\164\154\145\042\040\142\151\156\144" + "\055\163\157\165\162\143\145\075\042\101\144\167\120\162\145\146" + "\145\162\145\156\143\145\163\104\151\141\154\157\147\042\040\142" + "\151\156\144\055\160\162\157\160\145\162\164\171\075\042\164\151" + "\164\154\145\042\040\142\151\156\144\055\146\154\141\147\163\075" + "\042\163\171\156\143\055\143\162\145\141\164\145\042\057\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143" + "\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\102\162\145\141\153\160\157\151" + "\156\164\102\151\156\042\040\151\144\075\042\142\162\145\141\153" + "\160\157\151\156\164\137\142\151\156\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\167\151\144\164\150" + "\055\162\145\161\165\145\163\164\042\076\063\066\060\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\150\145\151\147\150\164\055\162" + "\145\161\165\145\163\164\042\076\061\065\060\074\057\160\162\157" + "\160\145\162\164\171\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\156\157\164\151\146\171\072\072\143\165\162\162" + "\145\156\164\055\142\162\145\141\153\160\157\151\156\164\042\040" + "\150\141\156\144\154\145\162\075\042\165\160\144\141\164\145\137" + "\166\151\145\167\137\163\167\151\164\143\150\145\162\042\040\163" + "\167\141\160\160\145\144\075\042\164\162\165\145\042\057\076\074" + "\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\102\162\145\141\153\160\157\151" + "\156\164\042\040\151\144\075\042\142\162\145\141\153\160\157\151" + "\156\164\042\076\074\143\157\156\144\151\164\151\157\156\076\155" + "\141\170\055\167\151\144\164\150\072\040\066\060\060\160\170\074" + "\057\143\157\156\144\151\164\151\157\156\076\074\163\145\164\164" + "\145\162\040\157\142\152\145\143\164\075\042\166\151\145\167\137" + "\163\167\151\164\143\150\145\162\137\142\141\162\042\040\160\162" + "\157\160\145\162\164\171\075\042\162\145\166\145\141\154\042\076" + "\124\162\165\145\074\057\163\145\164\164\145\162\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143\150" + "\151\154\144\042\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\101\144\167\124\157\157\154\142\141\162\126\151" + "\145\167\042\076\074\143\150\151\154\144\040\164\171\160\145\075" + "\042\164\157\160\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\110\145\141\144\145\162\102\141" + "\162\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\143\145\156\164\145\162\151\156\147\055\160\157\154" + "\151\143\171\042\076\163\164\162\151\143\164\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\164\151\164\154\145\055\167\151\144\147" + "\145\164\042\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\123\164\141\143\153\042\040\151\144\075" + "\042\164\151\164\154\145\137\163\164\141\143\153\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164\162" + "\141\156\163\151\164\151\157\156\055\164\171\160\145\042\076\143" + "\162\157\163\163\146\141\144\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\150\145\170\160\141\156\144\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\163\151\147\156" + "\141\154\040\156\141\155\145\075\042\156\157\164\151\146\171\072" + "\072\166\151\163\151\142\154\145\055\143\150\151\154\144\042\040" + "\150\141\156\144\154\145\162\075\042\164\151\164\154\145\137\163" + "\164\141\143\153\137\156\157\164\151\146\171\137\166\151\163\151" + "\142\154\145\137\143\150\151\154\144\137\143\142\042\040\163\167" + "\141\160\160\145\144\075\042\164\162\165\145\042\057\076\074\163" + "\151\147\156\141\154\040\156\141\155\145\075\042\156\157\164\151" + "\146\171\072\072\164\162\141\156\163\151\164\151\157\156\055\162" + "\165\156\156\151\156\147\042\040\150\141\156\144\154\145\162\075" + "\042\164\151\164\154\145\137\163\164\141\143\153\137\156\157\164" + "\151\146\171\137\164\162\141\156\163\151\164\151\157\156\137\162" + "\165\156\156\151\156\147\137\143\142\042\040\163\167\141\160\160" + "\145\144\075\042\164\162\165\145\042\057\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\123\164\141\143\153\120\141\147\145\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\156" + "\141\155\145\042\076\160\141\147\145\163\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123\164" + "\141\143\153\042\040\151\144\075\042\166\151\145\167\137\163\167" + "\151\164\143\150\145\162\137\163\164\141\143\153\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150\150" + "\157\155\157\147\145\156\145\157\165\163\042\076\106\141\154\163" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\126\151\145\167\123\167\151\164\143\150\145" + "\162\042\040\151\144\075\042\166\151\145\167\137\163\167\151\164" + "\143\150\145\162\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\163\164\141\143\153\042\076\160\141\147" + "\145\163\137\163\164\141\143\153\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\160\157\154\151\143\171\042\076\167\151\144\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\150\141\154\151\147\156" + "\042\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\127\151\156" + "\144\157\167\124\151\164\154\145\042\040\151\144\075\042\164\151" + "\164\154\145\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\164\151\164\154\145\042\040\142\151\156\144" + "\055\163\157\165\162\143\145\075\042\101\144\167\120\162\145\146" + "\145\162\145\156\143\145\163\104\151\141\154\157\147\042\040\142" + "\151\156\144\055\160\162\157\160\145\162\164\171\075\042\164\151" + "\164\154\145\042\040\142\151\156\144\055\146\154\141\147\163\075" + "\042\163\171\156\143\055\143\162\145\141\164\145\042\057\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123\164" + "\141\143\153\120\141\147\145\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\156\141\155\145\042\076\163" + "\145\141\162\143\150\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\101\144\167\103\154\141\155\160\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\164\151\147\150\164\145\156\151\156\147\055\164\150\162\145\163" + "\150\157\154\144\042\076\063\060\060\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\155\141\170\151\155\165\155\055\163\151\172\145" + "\042\076\064\060\060\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\123\145\141\162\143\150\105" + "\156\164\162\171\042\040\151\144\075\042\163\145\141\162\143\150" + "\137\145\156\164\162\171\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\160\154\141\143\145\150\157\154" + "\144\145\162\055\164\145\170\164\042\040\164\162\141\156\163\154" + "\141\164\141\142\154\145\075\042\171\145\163\042\076\123\145\141" + "\162\143\150\040\160\162\145\146\145\162\145\156\143\145\163\074" + "\057\160\162\157\160\145\162\164\171\076\074\163\151\147\156\141" + "\154\040\156\141\155\145\075\042\163\145\141\162\143\150\055\163" + "\164\141\162\164\145\144\042\040\150\141\156\144\154\145\162\075" + "\042\163\145\141\162\143\150\137\163\164\141\162\164\145\144\137" + "\143\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\163\145\141\162\143\150\055\143\150\141\156\147\145\144\042" + "\040\150\141\156\144\154\145\162\075\042\163\145\141\162\143\150" + "\137\143\150\141\156\147\145\144\137\143\142\042\040\163\167\141" + "\160\160\145\144\075\042\171\145\163\042\057\076\074\163\151\147" + "\156\141\154\040\156\141\155\145\075\042\163\164\157\160\055\163" + "\145\141\162\143\150\042\040\150\141\156\144\154\145\162\075\042" + "\163\164\157\160\137\163\145\141\162\143\150\137\143\142\042\040" + "\163\167\141\160\160\145\144\075\042\171\145\163\042\057\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\143\150\151" + "\154\144\040\164\171\160\145\075\042\163\164\141\162\164\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\124\157\147\147\154\145\102\165\164\164\157\156\042\040" + "\151\144\075\042\163\145\141\162\143\150\137\142\165\164\164\157" + "\156\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\166\141\154\151\147\156\042\076\143\145\156\164\145" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\164\157\157\154" + "\164\151\160\055\164\145\170\164\042\040\164\162\141\156\163\154" + "\141\164\141\142\154\145\075\042\171\145\163\042\076\123\145\141" + "\162\143\150\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\151\143" + "\157\156\137\156\141\155\145\042\076\145\144\151\164\055\146\151" + "\156\144\055\163\171\155\142\157\154\151\143\074\057\160\162\157" + "\160\145\162\164\171\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\156\157\164\151\146\171\072\072\141\143\164\151" + "\166\145\042\040\150\141\156\144\154\145\162\075\042\163\145\141" + "\162\143\150\137\142\165\164\164\157\156\137\156\157\164\151\146" + "\171\137\141\143\164\151\166\145\137\143\142\042\040\163\167\141" + "\160\160\145\144\075\042\171\145\163\042\057\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143\157" + "\156\164\145\156\164\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\123\164\141\143\153\042\040" + "\151\144\075\042\143\157\156\164\145\156\164\137\163\164\141\143" + "\153\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\164\162\141\156\163\151\164\151\157\156\055\164\171" + "\160\145\042\076\143\162\157\163\163\146\141\144\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\166\150\157\155\157\147\145\156" + "\145\157\165\163\042\076\106\141\154\163\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123" + "\164\141\143\153\120\141\147\145\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\156\141\155\145\042\076" + "\160\141\147\145\163\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\101\144\167\124\157\157\154\142\141\162" + "\126\151\145\167\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\157\156\164\145\156\164\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\126\151\145\167\123\164\141\143\153\042\040\151\144\075\042" + "\160\141\147\145\163\137\163\164\141\143\153\042\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\156\157\164\151\146" + "\171\072\072\166\151\163\151\142\154\145\055\143\150\151\154\144" + "\042\040\150\141\156\144\154\145\162\075\042\156\157\164\151\146" + "\171\137\166\151\163\151\142\154\145\137\160\141\147\145\137\143" + "\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042" + "\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\156\157\164\151\146\171\072\072\166\151\163\151\142\154\145\055" + "\143\150\151\154\144\055\156\141\155\145\042\040\150\141\156\144" + "\154\145\162\075\042\156\157\164\151\146\171\137\166\151\163\151" + "\142\154\145\137\160\141\147\145\137\156\141\155\145\137\143\142" + "\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042\057" + "\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\143\150\151\154\144\040\164\171\160\145" + "\075\042\142\157\164\164\157\155\042\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\126\151\145\167" + "\123\167\151\164\143\150\145\162\102\141\162\042\040\151\144\075" + "\042\166\151\145\167\137\163\167\151\164\143\150\145\162\137\142" + "\141\162\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\163\164\141\143\153\042\076\160\141\147\145\163" + "\137\163\164\141\143\153\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\123\164\141\143\153\120\141\147\145\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\156\141\155\145\042" + "\076\163\145\141\162\143\150\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\123\164\141\143\153" + "\042\040\151\144\075\042\163\145\141\162\143\150\137\163\164\141" + "\143\153\042\076\074\143\150\151\154\144\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\107\164\153\123\164\141" + "\143\153\120\141\147\145\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\156\141\155\145\042\076\162\145" + "\163\165\154\164\163\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\101\144\167\120\162\145\146\145\162\145" + "\156\143\145\163\120\141\147\145\042\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\101\144\167\120\162\145\146\145\162\145\156\143\145\163\107\162" + "\157\165\160\042\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\114\151" + "\163\164\102\157\170\042\040\151\144\075\042\163\145\141\162\143" + "\150\137\162\145\163\165\154\164\163\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\163\145\154\145\143" + "\164\151\157\156\055\155\157\144\145\042\076\156\157\156\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\166\141\154\151\147\156" + "\042\076\163\164\141\162\164\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\162\157\167\055\141\143\164\151\166\141\164\145\144\042\040\150" + "\141\156\144\154\145\162\075\042\163\145\141\162\143\150\137\162" + "\145\163\165\154\164\137\141\143\164\151\166\141\164\145\144\137" + "\143\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\155\141\160\042\040\150\141\156\144\154\145\162\075\042\163" + "\145\141\162\143\150\137\162\145\163\165\154\164\163\137\155\141" + "\160\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042" + "\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\165\156\155\141\160\042\040\150\141\156\144\154\145\162\075\042" + "\163\145\141\162\143\150\137\162\145\163\165\154\164\163\137\165" + "\156\155\141\160\042\040\163\167\141\160\160\145\144\075\042\171" + "\145\163\042\057\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\142\157\170\145\144\055\154" + "\151\163\164\042\057\076\074\057\163\164\171\154\145\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123\164" + "\141\143\153\120\141\147\145\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\156\141\155\145\042\076\156" + "\157\055\162\145\163\165\154\164\163\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\123\164\141" + "\164\165\163\120\141\147\145\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\151\143\157\156\055\156\141" + "\155\145\042\076\145\144\151\164\055\146\151\156\144\055\163\171" + "\155\142\157\154\151\143\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\164\151\164\154\145\042\040\164\162\141\156\163\154\141\164" + "\141\142\154\145\075\042\171\145\163\042\076\116\157\040\122\145" + "\163\165\154\164\163\040\106\157\165\156\144\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\144\145\163\143\162\151\160\164\151\157" + "\156\042\040\164\162\141\156\163\154\141\164\141\142\154\145\075" + "\042\171\145\163\042\076\124\162\171\040\141\040\144\151\146\146" + "\145\162\145\156\164\040\163\145\141\162\143\150\056\074\057\160" + "\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\164\145\155\160\154\141\164" + "\145\076\074\057\151\156\164\145\162\146\141\143\145\076\012\000" + "\000\050\165\165\141\171\051\141\144\167\055\164\141\142\055\157" + "\166\145\162\146\154\157\167\055\163\171\155\142\157\154\151\143" + "\056\163\166\147\000\000\000\000\265\005\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\077\076\012\074\163\166\147\040\170\155\154\156\163" + "\075\042\150\164\164\160\072\057\057\167\167\167\056\167\063\056" + "\157\162\147\057\062\060\060\060\057\163\166\147\042\040\167\151" + "\144\164\150\075\042\061\066\042\040\150\145\151\147\150\164\075" + "\042\061\066\042\076\074\160\141\164\150\040\163\164\171\154\145" + "\075\042\146\151\154\154\072\043\062\145\063\064\063\066\073\146" + "\151\154\154\055\157\160\141\143\151\164\171\072\061\042\040\144" + "\075\042\115\063\056\060\060\066\040\060\143\055\061\056\066\064" + "\065\040\060\055\063\040\061\056\063\065\065\055\063\040\063\166" + "\061\060\143\060\040\061\056\066\064\065\040\061\056\063\065\065" + "\040\063\040\063\040\063\150\061\060\143\061\056\066\064\065\040" + "\060\040\063\055\061\056\063\065\065\040\063\055\063\126\063\143" + "\060\055\061\056\066\064\065\055\061\056\063\065\065\055\063\055" + "\063\055\063\150\055\061\060\172\155\060\040\062\150\061\060\143" + "\056\065\067\061\040\060\040\061\040\056\064\062\071\040\061\040" + "\061\166\061\060\143\060\040\056\065\067\061\055\056\064\062\071" + "\040\061\055\061\040\061\150\055\061\060\143\055\056\065\067\061" + "\040\060\055\061\055\056\064\062\071\055\061\055\061\126\063\143" + "\060\055\056\065\067\061\056\064\062\071\055\061\040\061\055\061" + "\172\155\062\056\064\066\071\040\063\056\064\060\062\143\055\056" + "\063\064\071\040\060\055\056\066\067\063\056\060\067\064\055\056" + "\071\067\063\056\062\062\141\062\056\061\066\040\062\056\061\066" + "\040\060\040\060\040\060\055\056\067\067\056\065\070\040\062\056" + "\067\065\065\040\062\056\067\065\065\040\060\040\060\040\060\055" + "\056\065\060\067\056\070\067\101\063\056\063\063\040\063\056\063" + "\063\040\060\040\060\040\060\040\063\056\060\065\040\070\056\061" + "\066\143\060\040\056\063\071\067\056\060\065\067\056\067\066\065" + "\056\061\067\064\040\061\056\061\060\064\056\061\062\065\056\063" + "\062\071\056\062\071\065\056\066\062\056\065\060\067\056\070\067" + "\056\062\061\063\056\062\064\063\056\064\067\056\064\063\066\056" + "\067\067\056\065\070\141\062\056\063\061\061\040\062\056\063\061" + "\061\040\060\040\060\040\060\040\062\056\061\071\061\055\056\061" + "\065\070\143\056\064\060\067\055\056\062\065\056\070\062\071\055" + "\056\066\063\071\040\061\056\062\066\064\055\061\056\061\066\061" + "\056\064\062\066\056\065\066\056\070\065\062\056\071\066\063\040" + "\061\056\062\067\067\040\061\056\062\060\065\056\064\063\066\056" + "\062\064\062\056\070\066\066\056\063\066\063\040\061\056\062\071" + "\061\056\063\066\063\056\063\064\071\040\060\040\056\066\067\063" + "\055\056\060\066\070\056\071\067\063\055\056\062\060\063\056\063" + "\055\056\061\064\065\056\065\065\067\055\056\063\064\056\067\067" + "\055\056\065\070\062\056\062\061\062\055\056\062\065\062\056\063" + "\067\066\055\056\065\064\066\056\064\071\062\055\056\070\070\065" + "\056\061\062\066\055\056\063\063\071\056\061\071\055\056\067\056" + "\061\071\055\061\056\060\070\070\040\060\055\056\063\070\067\055" + "\056\060\066\064\055\056\067\065\061\055\056\061\071\055\061\056" + "\060\071\141\062\056\065\064\065\040\062\056\065\064\065\040\060" + "\040\060\040\060\055\056\064\071\062\055\056\070\066\071\040\062" + "\056\061\066\065\040\062\056\061\066\065\040\060\040\060\040\060" + "\055\056\067\067\055\056\065\070\062\040\062\056\062\060\063\040" + "\062\056\062\060\063\040\060\040\060\040\060\055\056\071\067\063" + "\055\056\062\061\067\143\055\056\064\061\066\040\060\055\056\070" + "\062\070\056\061\062\066\055\061\056\062\063\064\056\063\067\067" + "\055\056\063\071\067\056\062\064\062\055\056\070\061\063\056\066" + "\062\064\055\061\056\062\064\070\040\061\056\061\064\067\055\056" + "\064\062\066\055\056\065\066\061\055\056\070\065\066\055\056\071" + "\066\063\055\061\056\062\071\061\055\061\056\062\060\065\055\056" + "\064\062\066\055\056\062\064\062\055\056\070\065\062\055\056\063" + "\066\064\055\061\056\062\067\067\055\056\063\066\064\172\155\056" + "\061\061\065\040\061\056\067\064\063\143\056\061\071\063\040\060" + "\040\056\063\071\062\056\060\066\067\056\065\071\066\056\062\060" + "\063\056\062\060\063\056\061\062\065\056\064\066\056\063\071\062" + "\056\067\067\056\067\071\070\141\067\056\066\062\040\067\056\066" + "\062\040\060\040\060\040\061\055\056\064\063\066\056\065\062\062" + "\040\062\056\065\060\065\040\062\056\065\060\065\040\060\040\060" + "\040\061\055\056\063\064\070\056\063\062\040\061\056\062\063\062" + "\040\061\056\062\063\062\040\060\040\060\040\061\055\056\063\060" + "\065\056\061\064\065\040\061\056\060\061\063\040\061\056\060\061" + "\063\040\060\040\060\040\061\055\056\062\071\056\060\064\065\056" + "\067\062\071\056\067\062\071\040\060\040\060\040\061\055\056\065" + "\070\055\056\062\067\070\143\055\056\061\064\066\055\056\061\070" + "\063\055\056\062\062\055\056\064\063\055\056\062\062\055\056\067" + "\064\163\056\060\067\064\055\056\065\065\066\056\062\062\055\056" + "\067\064\141\056\067\064\056\067\064\040\060\040\060\040\061\040" + "\056\065\071\063\055\056\062\067\065\172\155\064\056\070\063\064" + "\056\060\064\064\143\056\062\063\062\040\060\040\056\064\062\061" + "\056\060\071\062\056\065\066\066\056\062\067\066\056\061\065\065" + "\056\061\070\064\056\062\063\063\056\064\063\056\062\063\063\056" + "\067\064\163\055\056\060\067\070\056\065\065\066\055\056\062\063" + "\063\056\067\064\141\056\067\060\061\056\067\060\061\040\060\040" + "\060\040\061\055\056\065\070\056\062\067\066\143\055\056\061\071" + "\063\040\060\055\056\063\071\062\055\056\060\066\064\055\056\065" + "\071\066\055\056\061\071\055\056\062\060\063\055\056\061\063\065" + "\055\056\064\066\055\056\064\060\066\055\056\067\067\055\056\070" + "\061\062\056\061\066\065\055\056\062\061\063\056\063\061\055\056" + "\063\070\066\056\064\063\066\055\056\065\062\062\141\061\056\070" + "\066\040\061\056\070\066\040\060\040\060\040\061\040\056\063\064" + "\070\055\056\063\060\064\040\061\056\061\061\040\061\056\061\061" + "\040\060\040\060\040\061\040\056\062\071\061\055\056\061\066\143" + "\056\060\071\067\055\056\060\063\056\061\071\070\055\056\060\064" + "\064\056\063\060\065\055\056\060\064\064\172\042\057\076\074\057" + "\163\166\147\076\012\000\000\050\165\165\141\171\051\141\144\167" + "\055\164\141\142\055\143\157\165\156\164\145\162\055\163\171\155" + "\142\157\154\151\143\056\163\166\147\000\000\000\000\000\000\000" + "\107\001\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\077\076\012\074\163" + "\166\147\040\170\155\154\156\163\075\042\150\164\164\160\072\057" + "\057\167\167\167\056\167\063\056\157\162\147\057\062\060\060\060" + "\057\163\166\147\042\040\167\151\144\164\150\075\042\061\066\042" + "\040\150\145\151\147\150\164\075\042\061\066\042\076\074\160\141" + "\164\150\040\144\075\042\115\063\056\060\060\066\040\060\143\055" + "\061\056\066\064\065\040\060\055\063\040\061\056\063\065\065\055" + "\063\040\063\166\061\060\143\060\040\061\056\066\064\065\040\061" + "\056\063\065\065\040\063\040\063\040\063\150\061\060\143\061\056" + "\066\064\065\040\060\040\063\055\061\056\063\065\065\040\063\055" + "\063\126\063\143\060\055\061\056\066\064\065\055\061\056\063\065" + "\065\055\063\055\063\055\063\172\155\060\040\062\150\061\060\143" + "\056\065\067\061\040\060\040\061\040\056\064\062\071\040\061\040" + "\061\166\061\060\143\060\040\056\065\067\061\055\056\064\062\071" + "\040\061\055\061\040\061\150\055\061\060\143\055\056\065\067\061" + "\040\060\055\061\055\056\064\062\071\055\061\055\061\126\063\143" + "\060\055\056\065\067\061\056\064\062\071\055\061\040\061\055\061" + "\172\042\040\163\164\171\154\145\075\042\146\151\154\154\072\043" + "\062\145\063\064\063\066\073\146\151\154\154\055\157\160\141\143" + "\151\164\171\072\061\042\057\076\074\057\163\166\147\076\012\000" + "\000\050\165\165\141\171\051\141\144\167\055\141\154\145\162\164" + "\055\144\151\141\154\157\147\056\165\151\000\000\000\000\000\000" + "\133\007\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\101\154\145\162\164\104\151\141\154\157\147" + "\042\040\160\141\162\145\156\164\075\042\101\144\167\104\151\141" + "\154\157\147\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\146\157\154\154\157\167\163\055\143\157\156" + "\164\145\156\164\055\163\151\172\145\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\160\162\145\163\145\156" + "\164\141\164\151\157\156\055\155\157\144\145\042\076\146\154\157" + "\141\164\151\156\147\074\057\160\162\157\160\145\162\164\171\076" + "\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141" + "\155\145\075\042\141\154\145\162\164\042\057\076\074\057\163\164" + "\171\154\145\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\107\151\172" + "\155\157\042\040\151\144\075\042\143\157\156\164\145\156\164\163" + "\042\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\127\151\156\144\157" + "\167\110\141\156\144\154\145\042\040\151\144\075\042\167\151\156" + "\144\157\167\137\150\141\156\144\154\145\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154" + "\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\102\157\170\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\157\162\151\145\156\164" + "\141\164\151\157\156\042\076\166\145\162\164\151\143\141\154\074" + "\057\160\162\157\160\145\162\164\171\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\123\143\162\157\154\154\145\144\127\151\156\144\157" + "\167\042\040\151\144\075\042\163\143\162\157\154\154\145\144\137" + "\167\151\156\144\157\167\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\160\162\157\160\141\147\141\164" + "\145\055\156\141\164\165\162\141\154\055\167\151\144\164\150\042" + "\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\160\162\157\160\141\147\141\164\145\055\156\141\164\165\162\141" + "\154\055\150\145\151\147\150\164\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\150\163\143\162\157\154\154" + "\142\141\162\055\160\157\154\151\143\171\042\076\156\145\166\145" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154" + "\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\102\157\170\042\040\151\144\075\042\155\145" + "\163\163\141\147\145\137\141\162\145\141\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\157\162\151\145" + "\156\164\141\164\151\157\156\042\076\166\145\162\164\151\143\141" + "\154\074\057\160\162\157\160\145\162\164\171\076\074\163\164\171" + "\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042" + "\155\145\163\163\141\147\145\055\141\162\145\141\042\057\076\074" + "\057\163\164\171\154\145\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\114\141\142\145\154\042\040\151\144\075\042\150\145\141\144\151" + "\156\147\137\154\141\142\145\154\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\167\162\141\160\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\167" + "\162\141\160\055\155\157\144\145\042\076\167\157\162\144\055\143" + "\150\141\162\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\155\141" + "\170\055\167\151\144\164\150\055\143\150\141\162\163\042\076\062" + "\060\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\152\165\163\164" + "\151\146\171\042\076\143\145\156\164\145\162\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\170\141\154\151\147\156\042\076\060\056" + "\065\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\164\151\164\154\145\055\062" + "\042\057\076\074\057\163\164\171\154\145\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\114\141\142\145\154\042\040\151\144\075\042" + "\142\157\144\171\137\154\141\142\145\154\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\145\170\160" + "\141\156\144\042\076\124\162\165\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\167\162\141\160\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\167\162\141\160\055\155\157" + "\144\145\042\076\167\157\162\144\055\143\150\141\162\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\155\141\170\055\167\151\144\164" + "\150\055\143\150\141\162\163\042\076\064\060\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\152\165\163\164\151\146\171\042\076\143" + "\145\156\164\145\162\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\170\141\154\151\147\156\042\076\060\056\065\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\166\151\163\151\142\154\145\042\076\106" + "\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123\145" + "\160\141\162\141\164\157\162\042\057\076\074\057\143\150\151\154" + "\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\101\144\167\107\151\172\155\157" + "\042\040\151\144\075\042\162\145\163\160\157\156\163\145\137\141" + "\162\145\141\042\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\162\145\163\160\157\156\163" + "\145\055\141\162\145\141\042\057\076\074\057\163\164\171\154\145" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\164\145\155" + "\160\154\141\164\145\076\074\057\151\156\164\145\162\146\141\143" + "\145\076\012\000\000\050\165\165\141\171\051\141\144\167\055\163" + "\164\141\164\165\163\055\160\141\147\145\056\165\151\000\000\000" + "\375\007\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\123\164\141\164\165\163\120\141\147\145\042" + "\040\160\141\162\145\156\164\075\042\107\164\153\127\151\144\147" + "\145\164\042\076\074\141\143\143\145\163\163\151\142\151\154\151" + "\164\171\076\074\162\145\154\141\164\151\157\156\040\156\141\155" + "\145\075\042\154\141\142\145\154\154\145\144\055\142\171\042\076" + "\164\151\164\154\145\137\154\141\142\145\154\074\057\162\145\154" + "\141\164\151\157\156\076\074\162\145\154\141\164\151\157\156\040" + "\156\141\155\145\075\042\144\145\163\143\162\151\142\145\144\055" + "\142\171\042\076\144\145\163\143\162\151\160\164\151\157\156\137" + "\154\141\142\145\154\074\057\162\145\154\141\164\151\157\156\076" + "\074\057\141\143\143\145\163\163\151\142\151\154\151\164\171\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\123\143\162\157\154\154\145" + "\144\127\151\156\144\157\167\042\040\151\144\075\042\163\143\162" + "\157\154\154\145\144\137\167\151\156\144\157\167\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150\163" + "\143\162\157\154\154\142\141\162\055\160\157\154\151\143\171\042" + "\076\156\145\166\145\162\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\160\162\157\160\141\147\141\164\145\055\156\141\164\165\162" + "\141\154\055\150\145\151\147\150\164\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\102\157\170\042\040\151\144\075\042\164\157\160\154" + "\145\166\145\154\137\142\157\170\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\157\162\151\145\156\164" + "\141\164\151\157\156\042\076\166\145\162\164\151\143\141\154\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\166\141\154\151\147\156" + "\042\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162" + "\164\171\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\103\154\141\155" + "\160\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\164\153\102\157\170\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\157\162\151\145\156\164\141\164\151\157\156\042\076\166\145" + "\162\164\151\143\141\154\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\141\154\151\147\156\042\076\143\145\156\164\145\162\074" + "\057\160\162\157\160\145\162\164\171\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\111\155\141\147\145\042\040\151\144\075\042\151\155" + "\141\147\145\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\141\143\143\145\163\163\151\142\154\145\055" + "\162\157\154\145\042\076\160\162\145\163\145\156\164\141\164\151" + "\157\156\074\057\160\162\157\160\145\162\164\171\076\074\142\151" + "\156\144\151\156\147\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\074\143\154\157\163\165\162\145\040\146\165" + "\156\143\164\151\157\156\075\042\150\141\163\137\151\155\141\147" + "\145\042\040\164\171\160\145\075\042\147\142\157\157\154\145\141" + "\156\042\076\074\154\157\157\153\165\160\040\156\141\155\145\075" + "\042\151\143\157\156\055\156\141\155\145\042\076\151\155\141\147" + "\145\074\057\154\157\157\153\165\160\076\074\154\157\157\153\165" + "\160\040\156\141\155\145\075\042\160\141\151\156\164\141\142\154" + "\145\042\076\151\155\141\147\145\074\057\154\157\157\153\165\160" + "\076\074\057\143\154\157\163\165\162\145\076\074\057\142\151\156" + "\144\151\156\147\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\151\143\157\156\042\057\076" + "\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\114\141\142\145\154\042\040\151\144\075\042\164\151\164" + "\154\145\137\154\141\142\145\154\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\167\162\141\160\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\167" + "\162\141\160\055\155\157\144\145\042\076\167\157\162\144\055\143" + "\150\141\162\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\152\165" + "\163\164\151\146\171\042\076\143\145\156\164\145\162\074\057\160" + "\162\157\160\145\162\164\171\076\074\142\151\156\144\151\156\147" + "\040\156\141\155\145\075\042\166\151\163\151\142\154\145\042\076" + "\074\143\154\157\163\165\162\145\040\146\165\156\143\164\151\157" + "\156\075\042\163\164\162\151\156\147\137\151\163\137\156\157\164" + "\137\145\155\160\164\171\042\040\164\171\160\145\075\042\147\142" + "\157\157\154\145\141\156\042\076\074\154\157\157\153\165\160\040" + "\156\141\155\145\075\042\154\141\142\145\154\042\076\164\151\164" + "\154\145\137\154\141\142\145\154\074\057\154\157\157\153\165\160" + "\076\074\057\143\154\157\163\165\162\145\076\074\057\142\151\156" + "\144\151\156\147\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\164\151\164\154\145\042\057" + "\076\074\143\154\141\163\163\040\156\141\155\145\075\042\164\151" + "\164\154\145\055\061\042\057\076\074\057\163\164\171\154\145\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\114\141\142\145\154\042" + "\040\151\144\075\042\144\145\163\143\162\151\160\164\151\157\156" + "\137\154\141\142\145\154\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\167\162\141\160\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\167\162\141" + "\160\055\155\157\144\145\042\076\167\157\162\144\055\143\150\141" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\152\165\163\164" + "\151\146\171\042\076\143\145\156\164\145\162\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\165\163\145\055\155\141\162\153\165\160" + "\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\142\151\156\144\151\156\147\040\156\141\155\145\075\042" + "\166\151\163\151\142\154\145\042\076\074\143\154\157\163\165\162" + "\145\040\146\165\156\143\164\151\157\156\075\042\163\164\162\151" + "\156\147\137\151\163\137\156\157\164\137\145\155\160\164\171\042" + "\040\164\171\160\145\075\042\147\142\157\157\154\145\141\156\042" + "\076\074\154\157\157\153\165\160\040\156\141\155\145\075\042\154" + "\141\142\145\154\042\076\144\145\163\143\162\151\160\164\151\157" + "\156\137\154\141\142\145\154\074\057\154\157\157\153\165\160\076" + "\074\057\143\154\157\163\165\162\145\076\074\057\142\151\156\144" + "\151\156\147\076\074\163\164\171\154\145\076\074\143\154\141\163" + "\163\040\156\141\155\145\075\042\142\157\144\171\042\057\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\144\145\163\143" + "\162\151\160\164\151\157\156\042\057\076\074\057\163\164\171\154" + "\145\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\164" + "\145\155\160\154\141\164\145\076\074\057\151\156\164\145\162\146" + "\141\143\145\076\012\000\000\050\165\165\141\171\051\141\144\167" + "\055\160\162\145\146\145\162\145\156\143\145\163\055\167\151\156" + "\144\157\167\056\165\151\000\000\067\027\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\120\162\145" + "\146\145\162\145\156\143\145\163\127\151\156\144\157\167\042\040" + "\160\141\162\145\156\164\075\042\101\144\167\127\151\156\144\157" + "\167\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\155\157\144\141\154\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\144\145\163\164\162\157\171" + "\137\167\151\164\150\137\160\141\162\145\156\164\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\151\143\157" + "\156\137\156\141\155\145\042\076\147\164\153\055\160\162\145\146" + "\145\162\145\156\143\145\163\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\164\151\164\154\145\042\040\164\162\141\156\163\154\141" + "\164\141\142\154\145\075\042\171\145\163\042\076\120\162\145\146" + "\145\162\145\156\143\145\163\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\144\145\146\141\165\154\164\055\167\151\144\164\150\042" + "\076\066\064\060\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\144" + "\145\146\141\165\154\164\055\150\145\151\147\150\164\042\076\065" + "\067\066\074\057\160\162\157\160\145\162\164\171\076\074\163\164" + "\171\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075" + "\042\160\162\145\146\145\162\145\156\143\145\163\042\057\076\074" + "\057\163\164\171\154\145\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\157\156\164\145\156\164\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\124\157\141\163\164\117\166\145\162\154\141\171\042\040" + "\151\144\075\042\164\157\141\163\164\137\157\166\145\162\154\141" + "\171\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\114\145\141\146" + "\154\145\164\042\040\151\144\075\042\163\165\142\160\141\147\145" + "\163\137\154\145\141\146\154\145\164\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\141\156\055\156" + "\141\166\151\147\141\164\145\055\142\141\143\153\042\040\142\151" + "\156\144\055\163\157\165\162\143\145\075\042\101\144\167\120\162" + "\145\146\145\162\145\156\143\145\163\127\151\156\144\157\167\042" + "\040\142\151\156\144\055\160\162\157\160\145\162\164\171\075\042" + "\143\141\156\055\156\141\166\151\147\141\164\145\055\142\141\143" + "\153\042\040\142\151\156\144\055\146\154\141\147\163\075\042\163" + "\171\156\143\055\143\162\145\141\164\145\042\057\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\141\156" + "\055\165\156\146\157\154\144\042\076\106\141\154\163\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\167\151\144\164\150\055\162" + "\145\161\165\145\163\164\042\076\063\066\060\074\057\160\162\157" + "\160\145\162\164\171\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\156\157\164\151\146\171\072\072\143\150\151\154" + "\144\055\164\162\141\156\163\151\164\151\157\156\055\162\165\156" + "\156\151\156\147\042\040\150\141\156\144\154\145\162\075\042\164" + "\162\171\137\162\145\155\157\166\145\137\154\145\147\141\143\171" + "\137\163\165\142\160\141\147\145\163\042\040\163\167\141\160\160" + "\145\144\075\042\171\145\163\042\057\076\074\163\151\147\156\141" + "\154\040\156\141\155\145\075\042\156\157\164\151\146\171\072\072" + "\166\151\163\151\142\154\145\055\143\150\151\154\144\042\040\150" + "\141\156\144\154\145\162\075\042\164\162\171\137\162\145\155\157" + "\166\145\137\154\145\147\141\143\171\137\163\165\142\160\141\147" + "\145\163\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\116\141\166\151" + "\147\141\164\151\157\156\126\151\145\167\042\040\151\144\075\042" + "\163\165\142\160\141\147\145\163\137\156\141\166\137\166\151\145" + "\167\042\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\116\141\166\151" + "\147\141\164\151\157\156\120\141\147\145\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164\154" + "\145\042\040\142\151\156\144\055\163\157\165\162\143\145\075\042" + "\101\144\167\120\162\145\146\145\162\145\156\143\145\163\127\151" + "\156\144\157\167\042\040\142\151\156\144\055\160\162\157\160\145" + "\162\164\171\075\042\164\151\164\154\145\042\040\142\151\156\144" + "\055\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145" + "\141\164\145\042\057\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\102" + "\162\145\141\153\160\157\151\156\164\102\151\156\042\040\151\144" + "\075\042\142\162\145\141\153\160\157\151\156\164\137\142\151\156" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\167\151\144\164\150\055\162\145\161\165\145\163\164\042" + "\076\063\066\060\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150" + "\145\151\147\150\164\055\162\145\161\165\145\163\164\042\076\061" + "\065\060\074\057\160\162\157\160\145\162\164\171\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\156\157\164\151\146" + "\171\072\072\143\165\162\162\145\156\164\055\142\162\145\141\153" + "\160\157\151\156\164\042\040\150\141\156\144\154\145\162\075\042" + "\165\160\144\141\164\145\137\166\151\145\167\137\163\167\151\164" + "\143\150\145\162\042\040\163\167\141\160\160\145\144\075\042\164" + "\162\165\145\042\057\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\102" + "\162\145\141\153\160\157\151\156\164\042\040\151\144\075\042\142" + "\162\145\141\153\160\157\151\156\164\042\076\074\143\157\156\144" + "\151\164\151\157\156\076\155\141\170\055\167\151\144\164\150\072" + "\040\066\060\060\160\170\074\057\143\157\156\144\151\164\151\157" + "\156\076\074\163\145\164\164\145\162\040\157\142\152\145\143\164" + "\075\042\166\151\145\167\137\163\167\151\164\143\150\145\162\137" + "\142\141\162\042\040\160\162\157\160\145\162\164\171\075\042\162" + "\145\166\145\141\154\042\076\124\162\165\145\074\057\163\145\164" + "\164\145\162\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\124\157" + "\157\154\142\141\162\126\151\145\167\042\076\074\143\150\151\154" + "\144\040\164\171\160\145\075\042\164\157\160\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\110" + "\145\141\144\145\162\102\141\162\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\145\156\164\145\162" + "\151\156\147\055\160\157\154\151\143\171\042\076\163\164\162\151" + "\143\164\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164" + "\154\145\055\167\151\144\147\145\164\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\107\164\153\123\164\141" + "\143\153\042\040\151\144\075\042\164\151\164\154\145\137\163\164" + "\141\143\153\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\164\162\141\156\163\151\164\151\157\156\055" + "\164\171\160\145\042\076\143\162\157\163\163\146\141\144\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\150\145\170\160\141\156" + "\144\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\156\157\164\151\146\171\072\072\166\151\163\151\142\154\145\055" + "\143\150\151\154\144\042\040\150\141\156\144\154\145\162\075\042" + "\164\151\164\154\145\137\163\164\141\143\153\137\156\157\164\151" + "\146\171\137\166\151\163\151\142\154\145\137\143\150\151\154\144" + "\137\143\142\042\040\163\167\141\160\160\145\144\075\042\164\162" + "\165\145\042\057\076\074\163\151\147\156\141\154\040\156\141\155" + "\145\075\042\156\157\164\151\146\171\072\072\164\162\141\156\163" + "\151\164\151\157\156\055\162\165\156\156\151\156\147\042\040\150" + "\141\156\144\154\145\162\075\042\164\151\164\154\145\137\163\164" + "\141\143\153\137\156\157\164\151\146\171\137\164\162\141\156\163" + "\151\164\151\157\156\137\162\165\156\156\151\156\147\137\143\142" + "\042\040\163\167\141\160\160\145\144\075\042\164\162\165\145\042" + "\057\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\123\164\141\143\153" + "\120\141\147\145\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\156\141\155\145\042\076\160\141\147\145" + "\163\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154" + "\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\123\164\141\143\153\042\040\151\144\075\042" + "\166\151\145\167\137\163\167\151\164\143\150\145\162\137\163\164" + "\141\143\153\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\150\150\157\155\157\147\145\156\145\157\165" + "\163\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\126\151\145\167" + "\123\167\151\164\143\150\145\162\042\040\151\144\075\042\166\151" + "\145\167\137\163\167\151\164\143\150\145\162\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\163\164\141" + "\143\153\042\076\160\141\147\145\163\137\163\164\141\143\153\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\160\157\154\151\143\171" + "\042\076\167\151\144\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\150\141\154\151\147\156\042\076\143\145\156\164\145\162\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\127\151\156\144\157\167\124\151\164\154\145\042" + "\040\151\144\075\042\164\151\164\154\145\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164\154" + "\145\042\040\142\151\156\144\055\163\157\165\162\143\145\075\042" + "\101\144\167\120\162\145\146\145\162\145\156\143\145\163\127\151" + "\156\144\157\167\042\040\142\151\156\144\055\160\162\157\160\145" + "\162\164\171\075\042\164\151\164\154\145\042\040\142\151\156\144" + "\055\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145" + "\141\164\145\042\057\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\123\164\141\143\153\120\141\147\145\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\156\141\155\145\042\076\163\145\141\162\143\150\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\103\154\141\155\160\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\164\151\147\150\164\145\156\151\156" + "\147\055\164\150\162\145\163\150\157\154\144\042\076\063\060\060" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\155\141\170\151\155" + "\165\155\055\163\151\172\145\042\076\064\060\060\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\123\145\141\162\143\150\105\156\164\162\171\042\040\151\144\075" + "\042\163\145\141\162\143\150\137\145\156\164\162\171\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\160" + "\154\141\143\145\150\157\154\144\145\162\055\164\145\170\164\042" + "\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042\171" + "\145\163\042\076\123\145\141\162\143\150\040\160\162\145\146\145" + "\162\145\156\143\145\163\074\057\160\162\157\160\145\162\164\171" + "\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042\163" + "\145\141\162\143\150\055\163\164\141\162\164\145\144\042\040\150" + "\141\156\144\154\145\162\075\042\163\145\141\162\143\150\137\163" + "\164\141\162\164\145\144\137\143\142\042\040\163\167\141\160\160" + "\145\144\075\042\171\145\163\042\057\076\074\163\151\147\156\141" + "\154\040\156\141\155\145\075\042\163\145\141\162\143\150\055\143" + "\150\141\156\147\145\144\042\040\150\141\156\144\154\145\162\075" + "\042\163\145\141\162\143\150\137\143\150\141\156\147\145\144\137" + "\143\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\163\164\157\160\055\163\145\141\162\143\150\042\040\150\141" + "\156\144\154\145\162\075\042\163\164\157\160\137\163\145\141\162" + "\143\150\137\143\142\042\040\163\167\141\160\160\145\144\075\042" + "\171\145\163\042\057\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\143\150\151\154\144\040\164\171\160\145\075\042" + "\163\164\141\162\164\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\124\157\147\147\154\145\102" + "\165\164\164\157\156\042\040\151\144\075\042\163\145\141\162\143" + "\150\137\142\165\164\164\157\156\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\166\141\154\151\147\156" + "\042\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\164\157\157\154\164\151\160\055\164\145\170\164\042" + "\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042\171" + "\145\163\042\076\123\145\141\162\143\150\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\151\143\157\156\137\156\141\155\145\042\076" + "\145\144\151\164\055\146\151\156\144\055\163\171\155\142\157\154" + "\151\143\074\057\160\162\157\160\145\162\164\171\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\156\157\164\151\146" + "\171\072\072\141\143\164\151\166\145\042\040\150\141\156\144\154" + "\145\162\075\042\163\145\141\162\143\150\137\142\165\164\164\157" + "\156\137\156\157\164\151\146\171\137\141\143\164\151\166\145\137" + "\143\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\157\156\164\145\156\164\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\123\164\141\143\153\042\040\151\144\075\042\143\157\156\164\145" + "\156\164\137\163\164\141\143\153\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\164\162\141\156\163\151" + "\164\151\157\156\055\164\171\160\145\042\076\143\162\157\163\163" + "\146\141\144\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166" + "\150\157\155\157\147\145\156\145\157\165\163\042\076\106\141\154" + "\163\145\074\057\160\162\157\160\145\162\164\171\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\123\164\141\143\153\120\141\147\145\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\156\141\155\145\042\076\160\141\147\145\163\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\124\157\157\154\142\141\162\126\151\145\167\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\157\156" + "\164\145\156\164\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\126\151\145\167\123\164\141\143" + "\153\042\040\151\144\075\042\160\141\147\145\163\137\163\164\141" + "\143\153\042\076\074\163\151\147\156\141\154\040\156\141\155\145" + "\075\042\156\157\164\151\146\171\072\072\166\151\163\151\142\154" + "\145\055\143\150\151\154\144\042\040\150\141\156\144\154\145\162" + "\075\042\156\157\164\151\146\171\137\166\151\163\151\142\154\145" + "\137\160\141\147\145\137\143\142\042\040\163\167\141\160\160\145" + "\144\075\042\171\145\163\042\057\076\074\163\151\147\156\141\154" + "\040\156\141\155\145\075\042\156\157\164\151\146\171\072\072\166" + "\151\163\151\142\154\145\055\143\150\151\154\144\055\156\141\155" + "\145\042\040\150\141\156\144\154\145\162\075\042\156\157\164\151" + "\146\171\137\166\151\163\151\142\154\145\137\160\141\147\145\137" + "\156\141\155\145\137\143\142\042\040\163\167\141\160\160\145\144" + "\075\042\171\145\163\042\057\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\143\150\151" + "\154\144\040\164\171\160\145\075\042\142\157\164\164\157\155\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\101\144\167\126\151\145\167\123\167\151\164\143\150\145\162\102" + "\141\162\042\040\151\144\075\042\166\151\145\167\137\163\167\151" + "\164\143\150\145\162\137\142\141\162\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\163\164\141\143\153" + "\042\076\160\141\147\145\163\137\163\164\141\143\153\074\057\160" + "\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143" + "\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\123\164\141\143\153\120\141\147\145" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\156\141\155\145\042\076\163\145\141\162\143\150\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\123\164\141\143\153\042\040\151\144\075\042\163\145\141" + "\162\143\150\137\163\164\141\143\153\042\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\123\164\141\143\153\120\141\147\145\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\156" + "\141\155\145\042\076\162\145\163\165\154\164\163\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\120\162\145\146\145\162\145\156\143\145\163\120\141\147\145\042" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\101\144\167\120\162\145\146\145\162" + "\145\156\143\145\163\107\162\157\165\160\042\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\114\151\163\164\102\157\170\042\040\151\144" + "\075\042\163\145\141\162\143\150\137\162\145\163\165\154\164\163" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\163\145\154\145\143\164\151\157\156\055\155\157\144\145" + "\042\076\156\157\156\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\141\154\151\147\156\042\076\163\164\141\162\164\074\057" + "\160\162\157\160\145\162\164\171\076\074\163\151\147\156\141\154" + "\040\156\141\155\145\075\042\162\157\167\055\141\143\164\151\166" + "\141\164\145\144\042\040\150\141\156\144\154\145\162\075\042\163" + "\145\141\162\143\150\137\162\145\163\165\154\164\137\141\143\164" + "\151\166\141\164\145\144\137\143\142\042\040\163\167\141\160\160" + "\145\144\075\042\171\145\163\042\057\076\074\163\151\147\156\141" + "\154\040\156\141\155\145\075\042\155\141\160\042\040\150\141\156" + "\144\154\145\162\075\042\163\145\141\162\143\150\137\162\145\163" + "\165\154\164\163\137\155\141\160\042\040\163\167\141\160\160\145" + "\144\075\042\171\145\163\042\057\076\074\163\151\147\156\141\154" + "\040\156\141\155\145\075\042\165\156\155\141\160\042\040\150\141" + "\156\144\154\145\162\075\042\163\145\141\162\143\150\137\162\145" + "\163\165\154\164\163\137\165\156\155\141\160\042\040\163\167\141" + "\160\160\145\144\075\042\171\145\163\042\057\076\074\163\164\171" + "\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042" + "\142\157\170\145\144\055\154\151\163\164\042\057\076\074\057\163" + "\164\171\154\145\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\123\164\141\143\153\120\141\147\145\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\156\141\155\145\042\076\156\157\055\162\145\163\165\154\164\163" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\123\164\141\164\165\163\120\141\147\145\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\151\143\157\156\055\156\141\155\145\042\076\145\144\151\164\055" + "\146\151\156\144\055\163\171\155\142\157\154\151\143\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\164\151\164\154\145\042\040\164" + "\162\141\156\163\154\141\164\141\142\154\145\075\042\171\145\163" + "\042\076\116\157\040\122\145\163\165\154\164\163\040\106\157\165" + "\156\144\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\144\145\163" + "\143\162\151\160\164\151\157\156\042\040\164\162\141\156\163\154" + "\141\164\141\142\154\145\075\042\171\145\163\042\076\124\162\171" + "\040\141\040\144\151\146\146\145\162\145\156\164\040\163\145\141" + "\162\143\150\056\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057\160" + "\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143" + "\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\164\145\155\160\154\141\164\145\076\074\057\151\156\164\145" + "\162\146\141\143\145\076\012\000\000\050\165\165\141\171\051\141" + "\166\141\164\141\162\055\144\145\146\141\165\154\164\055\163\171" + "\155\142\157\154\151\143\056\163\166\147\000\000\000\000\000\000" + "\032\001\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\077\076\012\074\163" + "\166\147\040\170\155\154\156\163\075\042\150\164\164\160\072\057" + "\057\167\167\167\056\167\063\056\157\162\147\057\062\060\060\060" + "\057\163\166\147\042\040\167\151\144\164\150\075\042\061\066\042" + "\040\150\145\151\147\150\164\075\042\061\066\042\076\074\160\141" + "\164\150\040\144\075\042\115\070\040\061\141\063\040\063\040\060" + "\040\061\060\060\040\066\040\063\040\063\040\060\040\060\060\060" + "\055\066\172\115\066\056\065\040\070\101\064\056\064\071\040\064" + "\056\064\071\040\060\040\060\060\062\040\061\062\056\065\126\061" + "\064\143\060\040\061\040\061\040\061\040\061\040\061\150\061\060" + "\163\061\040\060\040\061\055\061\166\055\061\056\065\101\064\056" + "\064\071\040\064\056\064\071\040\060\040\060\060\071\056\065\040" + "\070\172\042\040\163\164\171\154\145\075\042\155\141\162\153\145" + "\162\072\156\157\156\145\042\040\143\157\154\157\162\075\042\043" + "\142\145\142\145\142\145\042\040\157\166\145\162\146\154\157\167" + "\075\042\166\151\163\151\142\154\145\042\040\146\151\154\154\075" + "\042\043\062\145\063\064\063\066\042\057\076\074\057\163\166\147" + "\076\012\000\000\050\165\165\141\171\051\141\144\167\055\145\170" + "\164\145\162\156\141\154\055\154\151\156\153\055\163\171\155\142" + "\157\154\151\143\056\163\166\147\152\002\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\077\076\012\074\163\166\147\040\170\155\154\156\163" + "\075\042\150\164\164\160\072\057\057\167\167\167\056\167\063\056" + "\157\162\147\057\062\060\060\060\057\163\166\147\042\040\150\145" + "\151\147\150\164\075\042\061\066\042\040\167\151\144\164\150\075" + "\042\061\066\042\076\074\160\141\164\150\040\144\075\042\115\063" + "\040\062\103\061\056\063\064\040\062\040\060\040\063\056\063\064" + "\040\060\040\065\166\070\143\060\040\061\056\066\066\040\061\056" + "\063\064\040\063\040\063\040\063\150\070\143\061\056\066\066\040" + "\060\040\063\055\061\056\063\064\040\063\055\063\126\071\143\060" + "\055\056\065\065\055\056\064\065\055\061\055\061\055\061\163\055" + "\061\040\056\064\065\055\061\040\061\166\064\143\060\040\056\065" + "\065\065\055\056\064\064\065\040\061\055\061\040\061\110\063\143" + "\055\056\065\065\065\040\060\055\061\055\056\064\064\065\055\061" + "\055\061\126\065\143\060\055\056\065\065\065\056\064\064\065\055" + "\061\040\061\055\061\150\064\143\056\065\065\040\060\040\061\055" + "\056\064\065\040\061\055\061\163\055\056\064\065\055\061\055\061" + "\055\061\172\155\067\055\062\143\055\056\065\065\040\060\055\061" + "\040\056\064\065\055\061\040\061\163\056\064\065\040\061\040\061" + "\040\061\150\062\056\065\070\066\114\067\056\062\071\063\040\067" + "\056\062\071\143\055\056\063\071\056\063\071\064\055\056\063\071" + "\040\061\056\060\062\066\040\060\040\061\056\064\061\067\163\061" + "\056\060\062\063\056\063\071\040\061\056\064\061\064\040\060\114" + "\061\064\040\063\056\064\061\064\126\066\143\060\040\056\065\065" + "\056\064\065\040\061\040\061\040\061\163\061\055\056\064\065\040" + "\061\055\061\126\061\141\056\071\067\066\056\071\067\066\040\060" + "\040\060\040\060\055\056\060\063\065\055\056\062\065\070\056\070" + "\070\064\056\070\070\064\040\060\040\060\040\060\055\056\061\060" + "\062\055\056\062\064\062\056\071\071\064\056\071\071\064\040\060" + "\040\060\040\060\055\056\061\065\066\055\056\062\060\067\114\061" + "\065\056\066\066\056\062\065\070\141\056\070\066\063\056\070\066" + "\063\040\060\040\060\040\060\055\056\062\071\067\055\056\061\067" + "\066\056\067\063\056\067\063\040\060\040\060\040\060\055\056\061" + "\065\066\055\056\060\065\143\055\056\060\063\071\055\056\060\061" + "\062\055\056\060\070\062\055\056\060\061\066\055\056\061\062\061" + "\055\056\060\062\103\061\065\056\060\065\065\056\060\060\064\040" + "\061\065\056\060\062\067\056\060\060\064\040\061\065\040\060\172" + "\155\060\040\060\042\040\146\151\154\154\075\042\043\062\062\062" + "\042\057\076\074\057\163\166\147\076\012\000\000\050\165\165\141" + "\171\051\141\144\167\055\155\141\151\154\055\163\145\156\144\055" + "\163\171\155\142\157\154\151\143\056\163\166\147\000\000\000\000" + "\033\002\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\077\076\012\074\163" + "\166\147\040\170\155\154\156\163\075\042\150\164\164\160\072\057" + "\057\167\167\167\056\167\063\056\157\162\147\057\062\060\060\060" + "\057\163\166\147\042\040\150\145\151\147\150\164\075\042\061\066" + "\042\040\167\151\144\164\150\075\042\061\066\042\076\074\160\141" + "\164\150\040\144\075\042\115\070\040\060\141\056\071\071\063\056" + "\071\071\063\040\060\040\060\040\060\055\056\067\060\067\056\062" + "\071\063\154\055\061\056\062\065\040\061\056\062\065\055\061\056" + "\067\066\062\040\061\056\067\063\143\055\056\061\071\061\056\062" + "\055\056\062\070\061\056\064\064\062\055\056\062\070\061\056\067" + "\065\040\060\040\056\071\067\067\040\061\040\061\040\061\040\061" + "\040\056\062\065\070\040\060\040\056\065\062\067\055\056\061\062" + "\070\056\067\061\071\055\056\063\061\062\114\067\040\063\056\064" + "\063\126\067\163\060\040\061\040\061\040\061\040\061\055\061\040" + "\061\055\061\126\063\056\064\063\154\061\056\062\070\061\040\061" + "\056\062\070\143\056\061\071\062\056\061\070\065\056\064\061\056" + "\063\061\063\056\067\061\071\056\063\061\063\040\060\040\060\040" + "\061\055\056\060\062\063\040\061\055\061\040\060\055\056\063\060" + "\070\055\056\060\071\055\056\065\065\055\056\062\070\061\055\056" + "\067\065\154\055\061\056\067\066\062\055\061\056\067\063\055\061" + "\056\062\065\055\061\056\062\065\101\056\071\071\063\056\071\071" + "\063\040\060\040\060\040\060\040\070\040\060\172\115\063\040\071" + "\143\055\061\056\066\064\065\040\060\055\063\040\061\056\063\065" + "\065\055\063\040\063\166\064\150\062\166\055\063\056\070\154\064" + "\056\066\061\063\040\063\056\060\067\067\141\062\056\065\060\065" + "\040\062\056\065\060\065\040\060\040\060\040\060\040\062\056\067" + "\067\064\040\060\114\061\064\040\061\062\056\062\126\061\066\150" + "\062\166\055\064\143\060\055\061\056\066\064\065\055\061\056\063" + "\065\065\055\063\055\063\055\063\172\155\056\070\040\062\150\070" + "\056\064\154\055\063\056\071\062\063\040\062\056\066\061\063\141" + "\056\064\071\065\056\064\071\065\040\060\040\060\040\061\055\056" + "\065\065\064\040\060\172\155\060\040\060\042\040\146\151\154\154" + "\075\042\043\062\145\063\064\063\066\042\057\076\074\057\163\166" + "\147\076\012\000\000\050\165\165\141\171\051\141\144\167\055\167" + "\151\156\144\157\167\055\164\151\164\154\145\056\165\151\000\000" + "\223\003\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\127\151\156\144\157\167\124\151\164\154\145" + "\042\040\160\141\162\145\156\164\075\042\107\164\153\127\151\144" + "\147\145\164\042\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102\157" + "\170\042\040\151\144\075\042\142\157\170\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\157\162\151\145" + "\156\164\141\164\151\157\156\042\076\166\145\162\164\151\143\141" + "\154\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\141\154\151" + "\147\156\042\076\143\145\156\164\145\162\074\057\160\162\157\160" + "\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\114\141" + "\142\145\154\042\040\151\144\075\042\164\151\164\154\145\137\154" + "\141\142\145\154\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\145\154\154\151\160\163\151\172\145\042" + "\076\145\156\144\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\167" + "\162\141\160\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\163\151\156\147\154\145\055\154\151\156\145" + "\055\155\157\144\145\042\076\124\162\165\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\167\151\144\164\150\055\143\150\141\162" + "\163\042\076\065\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166" + "\151\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\163\164\171\154\145\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\164\151\164\154" + "\145\042\057\076\074\057\163\164\171\154\145\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\114\141\142\145\154\042\040\151\144\075" + "\042\163\165\142\164\151\164\154\145\137\154\141\142\145\154\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\145\154\154\151\160\163\151\172\145\042\076\145\156\144\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\167\162\141\160\042\076" + "\106\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\163\151\156\147\154\145\055\154\151\156\145\055\155\157\144\145" + "\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\163\164\171\154\145" + "\076\074\143\154\141\163\163\040\156\141\155\145\075\042\163\165" + "\142\164\151\164\154\145\042\057\076\074\057\163\164\171\154\145" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\057\164\145\155\160\154\141\164\145\076\074\057" + "\151\156\164\145\162\146\141\143\145\076\012\000\000\050\165\165" + "\141\171\051\141\144\167\055\141\142\157\165\164\055\144\151\141" + "\154\157\147\056\165\151\000\000\132\104\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\101\142\157" + "\165\164\104\151\141\154\157\147\042\040\160\141\162\145\156\164" + "\075\042\101\144\167\104\151\141\154\157\147\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164" + "\154\145\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\101\142\157\165\164\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\157\156\164\145\156\164\055\167" + "\151\144\164\150\042\076\063\066\060\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\167\151\144\164\150\055\162\145\161\165\145\163" + "\164\042\076\063\066\060\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\150\145\151\147\150\164\055\162\145\161\165\145\163\164\042" + "\076\062\060\060\074\057\160\162\157\160\145\162\164\171\076\074" + "\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155" + "\145\075\042\141\142\157\165\164\042\057\076\074\057\163\164\171" + "\154\145\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\124\157\141\163" + "\164\117\166\145\162\154\141\171\042\040\151\144\075\042\164\157" + "\141\163\164\137\157\166\145\162\154\141\171\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151" + "\154\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\101\144\167\116\141\166\151\147\141\164\151\157\156" + "\126\151\145\167\042\040\151\144\075\042\156\141\166\151\147\141" + "\164\151\157\156\137\166\151\145\167\042\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\116\141\166\151\147\141\164\151\157\156\120\141" + "\147\145\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\164\151\164\154\145\042\040\142\151\156\144\055" + "\163\157\165\162\143\145\075\042\101\144\167\101\142\157\165\164" + "\104\151\141\154\157\147\042\040\142\151\156\144\055\160\162\157" + "\160\145\162\164\171\075\042\164\151\164\154\145\042\040\142\151" + "\156\144\055\146\154\141\147\163\075\042\163\171\156\143\055\143" + "\162\145\141\164\145\042\057\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\124\157\157\154\142\141\162\126\151\145\167\042\076\074\143" + "\150\151\154\144\040\164\171\160\145\075\042\164\157\160\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\110\145\141\144\145\162\102\141\162\042\040\151\144\075" + "\042\155\141\151\156\137\150\145\141\144\145\162\142\141\162\042" + "\057\076\074\057\143\150\151\154\144\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\157\156\164\145\156" + "\164\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\123\143\162\157\154\154\145\144\127\151\156" + "\144\157\167\042\040\151\144\075\042\155\141\151\156\137\163\143" + "\162\157\154\154\145\144\137\167\151\156\144\157\167\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150" + "\163\143\162\157\154\154\142\141\162\055\160\157\154\151\143\171" + "\042\076\156\145\166\145\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\160\162\157\160\141\147\141\164\145\055\156\141\164\165" + "\162\141\154\055\167\151\144\164\150\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\160\162\157\160\141\147" + "\141\164\145\055\156\141\164\165\162\141\154\055\150\145\151\147" + "\150\164\042\076\124\162\165\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\163\164\171\154\145\076\074\143\154\141\163\163" + "\040\156\141\155\145\075\042\155\141\151\156\055\160\141\147\145" + "\042\057\076\074\057\163\164\171\154\145\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\103\154\141\155\160\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\102\157\170\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\157\162\151\145\156\164\141" + "\164\151\157\156\042\076\166\145\162\164\151\143\141\154\074\057" + "\160\162\157\160\145\162\164\171\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\111\155\141\147\145\042\040\151\144\075\042\141\160\160" + "\137\151\143\157\156\137\151\155\141\147\145\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163" + "\151\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\160\151\170\145\154\055\163\151\172\145" + "\042\076\061\062\070\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\151\143\157\156\055\156\141\155\145\042\040\142\151\156\144\055" + "\163\157\165\162\143\145\075\042\101\144\167\101\142\157\165\164" + "\104\151\141\154\157\147\042\040\142\151\156\144\055\160\162\157" + "\160\145\162\164\171\075\042\141\160\160\154\151\143\141\164\151" + "\157\156\055\151\143\157\156\042\040\142\151\156\144\055\146\154" + "\141\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145" + "\042\057\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\141\143\143\145\163\163\151\142\154\145\055\162\157" + "\154\145\042\076\160\162\145\163\145\156\164\141\164\151\157\156" + "\074\057\160\162\157\160\145\162\164\171\076\074\163\164\171\154" + "\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042\151" + "\143\157\156\055\144\162\157\160\163\150\141\144\157\167\042\057" + "\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\114\141\142\145\154\042\040\151\144\075\042\141\160" + "\160\137\156\141\155\145\137\154\141\142\145\154\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151" + "\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\167\162\141\160\042\076\124\162\165" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\152\165\163\164" + "\151\146\171\042\076\143\145\156\164\145\162\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\154\141\142\145\154\042\040\142\151\156" + "\144\055\163\157\165\162\143\145\075\042\101\144\167\101\142\157" + "\165\164\104\151\141\154\157\147\042\040\142\151\156\144\055\160" + "\162\157\160\145\162\164\171\075\042\141\160\160\154\151\143\141" + "\164\151\157\156\055\156\141\155\145\042\040\142\151\156\144\055" + "\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145\141" + "\164\145\042\057\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\164\151\164\154\145\055\061" + "\042\057\076\074\057\163\164\171\154\145\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\114\141\142\145\154\042\040\151\144\075\042" + "\144\145\166\145\154\157\160\145\162\137\156\141\155\145\137\154" + "\141\142\145\154\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\166\151\163\151\142\154\145\042\076\106" + "\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\167" + "\162\141\160\042\076\124\162\165\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\152\165\163\164\151\146\171\042\076\143\145\156" + "\164\145\162\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\154\141" + "\142\145\154\042\040\142\151\156\144\055\163\157\165\162\143\145" + "\075\042\101\144\167\101\142\157\165\164\104\151\141\154\157\147" + "\042\040\142\151\156\144\055\160\162\157\160\145\162\164\171\075" + "\042\144\145\166\145\154\157\160\145\162\055\156\141\155\145\042" + "\040\142\151\156\144\055\146\154\141\147\163\075\042\163\171\156" + "\143\055\143\162\145\141\164\145\042\057\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\102\165\164\164\157\156\042\040\151\144\075" + "\042\166\145\162\163\151\157\156\137\142\165\164\164\157\156\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\150\141\154\151\147\156" + "\042\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\141\143\164\151\157\156\055\156\141\155\145\042\076" + "\141\142\157\165\164\056\143\157\160\171\055\160\162\157\160\145" + "\162\164\171\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143" + "\164\151\157\156\055\164\141\162\147\145\164\042\076\042\166\145" + "\162\163\151\157\156\042\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\141\156\055\163\150\162\151\156\153\042\076\124\162\165" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\154\141\142\145" + "\154\042\040\142\151\156\144\055\163\157\165\162\143\145\075\042" + "\101\144\167\101\142\157\165\164\104\151\141\154\157\147\042\040" + "\142\151\156\144\055\160\162\157\160\145\162\164\171\075\042\166" + "\145\162\163\151\157\156\042\040\142\151\156\144\055\146\154\141" + "\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145\042" + "\057\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\141\160\160\055\166\145\162\163\151\157" + "\156\042\057\076\074\057\163\164\171\154\145\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\102\157\170\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\157\162\151\145\156" + "\164\141\164\151\157\156\042\076\166\145\162\164\151\143\141\154" + "\074\057\160\162\157\160\145\162\164\171\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\120\162\145\146\145\162\145\156\143\145\163\107" + "\162\157\165\160\042\040\151\144\075\042\144\145\164\141\151\154" + "\163\137\147\162\157\165\160\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\166\151\163\151\142\154\145" + "\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\101\144\167\101\143\164\151\157" + "\156\122\157\167\042\040\151\144\075\042\167\150\141\164\163\137" + "\156\145\167\137\162\157\167\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\166\151\163\151\142\154\145" + "\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\164\151\164\154\145\042\040\164\162\141\156\163\154\141" + "\164\141\142\154\145\075\042\171\145\163\042\076\137\127\150\141" + "\164\342\200\231\163\040\116\145\167\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\165\163\145\055\165\156\144\145\162\154\151\156" + "\145\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\141\143\164\151\166\141\164\141\142\154\145\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143" + "\164\151\157\156\055\156\141\155\145\042\076\156\141\166\151\147" + "\141\164\151\157\156\056\160\165\163\150\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\141\143\164\151\157\156\055\164\141\162\147" + "\145\164\042\076\042\167\150\141\164\163\156\145\167\042\074\057" + "\160\162\157\160\145\162\164\171\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\111\155\141\147\145\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\151\143\157\156\055\156\141" + "\155\145\042\076\147\157\055\156\145\170\164\055\163\171\155\142" + "\157\154\151\143\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141" + "\143\143\145\163\163\151\142\154\145\055\162\157\154\145\042\076" + "\160\162\145\163\145\156\164\141\164\151\157\156\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\101\143\164\151\157\156\122\157\167\042\040\151\144\075" + "\042\144\145\164\141\151\154\163\137\162\157\167\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151" + "\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\164\151\164\154\145\042\040\164\162" + "\141\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042" + "\076\137\104\145\164\141\151\154\163\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\165\163\145\055\165\156\144\145\162\154\151\156" + "\145\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\141\143\164\151\166\141\164\141\142\154\145\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143" + "\164\151\157\156\055\156\141\155\145\042\076\156\141\166\151\147" + "\141\164\151\157\156\056\160\165\163\150\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\141\143\164\151\157\156\055\164\141\162\147" + "\145\164\042\076\042\144\145\164\141\151\154\163\042\074\057\160" + "\162\157\160\145\162\164\171\076\074\143\150\151\154\144\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\111\155\141\147\145\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\151\143\157\156\055\156\141\155" + "\145\042\076\147\157\055\156\145\170\164\055\163\171\155\142\157" + "\154\151\143\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143" + "\143\145\163\163\151\142\154\145\055\162\157\154\145\042\076\160" + "\162\145\163\145\156\164\141\164\151\157\156\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\101\143\164\151\157\156\122\157\167\042\040\151\144\075\042" + "\167\145\142\163\151\164\145\137\162\157\167\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163" + "\151\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\164\151\164\154\145\042\040\164\162\141" + "\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042\076" + "\137\127\145\142\163\151\164\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\165\163\145\055\165\156\144\145\162\154\151\156\145" + "\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\141\143\164\151\166\141\164\141\142\154\145\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164" + "\151\157\156\055\156\141\155\145\042\076\141\142\157\165\164\056" + "\163\150\157\167\055\165\162\154\055\160\162\157\160\145\162\164" + "\171\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\157\156\055\164\141\162\147\145\164\042\076\042\167\145\142\163" + "\151\164\145\042\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164" + "\157\157\154\164\151\160\055\164\145\170\164\042\040\142\151\156" + "\144\055\163\157\165\162\143\145\075\042\101\144\167\101\142\157" + "\165\164\104\151\141\154\157\147\042\040\142\151\156\144\055\160" + "\162\157\160\145\162\164\171\075\042\167\145\142\163\151\164\145" + "\042\040\142\151\156\144\055\146\154\141\147\163\075\042\163\171" + "\156\143\055\143\162\145\141\164\145\042\057\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\111\155\141\147\145\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\151\143\157\156" + "\055\156\141\155\145\042\076\141\144\167\055\145\170\164\145\162" + "\156\141\154\055\154\151\156\153\055\163\171\155\142\157\154\151" + "\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\143\145" + "\163\163\151\142\154\145\055\162\157\154\145\042\076\160\162\145" + "\163\145\156\164\141\164\151\157\156\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\120\162\145\146\145\162\145\156\143\145\163\107\162\157\165\160" + "\042\040\151\144\075\042\163\165\160\160\157\162\164\137\147\162" + "\157\165\160\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\166\151\163\151\142\154\145\042\076\106\141" + "\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\101\144\167\101\143\164\151\157\156\122\157\167" + "\042\040\151\144\075\042\163\165\160\160\157\162\164\137\162\157" + "\167\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\166\151\163\151\142\154\145\042\076\106\141\154\163" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\166\141\164\141\142\154\145\042\076\124\162\165\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\164\151\164\154\145\042\040\164" + "\162\141\156\163\154\141\164\141\142\154\145\075\042\171\145\163" + "\042\076\137\123\165\160\160\157\162\164\040\121\165\145\163\164" + "\151\157\156\163\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\165" + "\163\145\055\165\156\144\145\162\154\151\156\145\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164" + "\151\157\156\055\156\141\155\145\042\076\141\142\157\165\164\056" + "\163\150\157\167\055\165\162\154\055\160\162\157\160\145\162\164" + "\171\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\157\156\055\164\141\162\147\145\164\042\076\042\163\165\160\160" + "\157\162\164\055\165\162\154\042\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\164\157\157\154\164\151\160\055\164\145\170\164\042" + "\040\142\151\156\144\055\163\157\165\162\143\145\075\042\101\144" + "\167\101\142\157\165\164\104\151\141\154\157\147\042\040\142\151" + "\156\144\055\160\162\157\160\145\162\164\171\075\042\163\165\160" + "\160\157\162\164\055\165\162\154\042\040\142\151\156\144\055\146" + "\154\141\147\163\075\042\163\171\156\143\055\143\162\145\141\164" + "\145\042\057\076\074\143\150\151\154\144\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\107\164\153\111\155\141" + "\147\145\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\151\143\157\156\055\156\141\155\145\042\076\141" + "\144\167\055\145\170\164\145\162\156\141\154\055\154\151\156\153" + "\055\163\171\155\142\157\154\151\143\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\141\143\143\145\163\163\151\142\154\145\055\162" + "\157\154\145\042\076\160\162\145\163\145\156\164\141\164\151\157" + "\156\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\101\144\167\101\143\164\151\157\156\122\157\167" + "\042\040\151\144\075\042\151\163\163\165\145\137\162\157\167\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\164\151\166\141" + "\164\141\142\154\145\042\076\124\162\165\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\164\151\164\154\145\042\040\164\162\141" + "\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042\076" + "\137\122\145\160\157\162\164\040\141\156\040\111\163\163\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\165\163\145\055\165" + "\156\144\145\162\154\151\156\145\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\141\143\164\151\157\156\055" + "\156\141\155\145\042\076\141\142\157\165\164\056\163\150\157\167" + "\055\165\162\154\055\160\162\157\160\145\162\164\171\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\141\143\164\151\157\156\055\164" + "\141\162\147\145\164\042\076\042\151\163\163\165\145\055\165\162" + "\154\042\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\157\157" + "\154\164\151\160\055\164\145\170\164\042\040\142\151\156\144\055" + "\163\157\165\162\143\145\075\042\101\144\167\101\142\157\165\164" + "\104\151\141\154\157\147\042\040\142\151\156\144\055\160\162\157" + "\160\145\162\164\171\075\042\151\163\163\165\145\055\165\162\154" + "\042\040\142\151\156\144\055\146\154\141\147\163\075\042\163\171" + "\156\143\055\143\162\145\141\164\145\042\057\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\111\155\141\147\145\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\151\143\157\156" + "\055\156\141\155\145\042\076\141\144\167\055\145\170\164\145\162" + "\156\141\154\055\154\151\156\153\055\163\171\155\142\157\154\151" + "\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\143\145" + "\163\163\151\142\154\145\055\162\157\154\145\042\076\160\162\145" + "\163\145\156\164\141\164\151\157\156\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\101" + "\143\164\151\157\156\122\157\167\042\040\151\144\075\042\164\162" + "\157\165\142\154\145\163\150\157\157\164\151\156\147\137\162\157" + "\167\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\166\151\163\151\142\154\145\042\076\106\141\154\163" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164\154" + "\145\042\040\164\162\141\156\163\154\141\164\141\142\154\145\075" + "\042\171\145\163\042\076\137\124\162\157\165\142\154\145\163\150" + "\157\157\164\151\156\147\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141" + "\143\164\151\166\141\164\141\142\154\145\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151\157" + "\156\055\156\141\155\145\042\076\156\141\166\151\147\141\164\151" + "\157\156\056\160\165\163\150\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\141\143\164\151\157\156\055\164\141\162\147\145\164\042" + "\076\042\164\162\157\165\142\154\145\163\150\157\157\164\151\156" + "\147\042\074\057\160\162\157\160\145\162\164\171\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\111\155\141\147\145\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\151\143\157" + "\156\055\156\141\155\145\042\076\147\157\055\156\145\170\164\055" + "\163\171\155\142\157\154\151\143\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\141\143\143\145\163\163\151\142\154\145\055\162\157" + "\154\145\042\076\160\162\145\163\145\156\164\141\164\151\157\156" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\101\144\167\120\162\145\146\145\162\145\156\143" + "\145\163\107\162\157\165\160\042\040\151\144\075\042\143\162\145" + "\144\151\164\163\137\154\145\147\141\154\137\147\162\157\165\160" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\101\143\164\151\157\156\122\157\167\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164" + "\151\164\154\145\042\040\164\162\141\156\163\154\141\164\141\142" + "\154\145\075\042\171\145\163\042\076\137\103\162\145\144\151\164" + "\163\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\165\163\145\055" + "\165\156\144\145\162\154\151\156\145\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\164\151\166\141" + "\164\141\142\154\145\042\076\124\162\165\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\141\143\164\151\157\156\055\156\141\155" + "\145\042\076\156\141\166\151\147\141\164\151\157\156\056\160\165" + "\163\150\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164" + "\151\157\156\055\164\141\162\147\145\164\042\076\042\143\162\145" + "\144\151\164\163\042\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\166\151\163\151\142\154\145\042\040\142\151\156\144\055\163\157" + "\165\162\143\145\075\042\143\162\145\144\151\164\163\137\142\157" + "\170\042\040\142\151\156\144\055\160\162\157\160\145\162\164\171" + "\075\042\166\151\163\151\142\154\145\042\040\142\151\156\144\055" + "\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145\141" + "\164\145\042\057\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\111\155" + "\141\147\145\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\151\143\157\156\055\156\141\155\145\042\076" + "\147\157\055\156\145\170\164\055\163\171\155\142\157\154\151\143" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\143\145\163" + "\163\151\142\154\145\055\162\157\154\145\042\076\160\162\145\163" + "\145\156\164\141\164\151\157\156\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\101\143" + "\164\151\157\156\122\157\167\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\164\151\164\154\145\042\040" + "\164\162\141\156\163\154\141\164\141\142\154\145\075\042\171\145" + "\163\042\076\137\114\145\147\141\154\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\165\163\145\055\165\156\144\145\162\154\151\156" + "\145\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\141\143\164\151\166\141\164\141\142\154\145\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143" + "\164\151\157\156\055\156\141\155\145\042\076\156\141\166\151\147" + "\141\164\151\157\156\056\160\165\163\150\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\141\143\164\151\157\156\055\164\141\162\147" + "\145\164\042\076\042\154\145\147\141\154\042\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\166\151\163\151\142\154\145\042\040\142" + "\151\156\144\055\163\157\165\162\143\145\075\042\154\145\147\141" + "\154\137\142\157\170\042\040\142\151\156\144\055\160\162\157\160" + "\145\162\164\171\075\042\166\151\163\151\142\154\145\042\040\142" + "\151\156\144\055\146\154\141\147\163\075\042\163\171\156\143\055" + "\143\162\145\141\164\145\042\057\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\111\155\141\147\145\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\151\143\157\156\055\156\141" + "\155\145\042\076\147\157\055\156\145\170\164\055\163\171\155\142" + "\157\154\151\143\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141" + "\143\143\145\163\163\151\142\154\145\055\162\157\154\145\042\076" + "\160\162\145\163\145\156\164\141\164\151\157\156\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\101\143\164\151\157\156\122\157\167\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164" + "\154\145\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\137\101\143\153\156\157\167\154\145" + "\144\147\145\155\145\156\164\163\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\165\163\145\055\165\156\144\145\162\154\151\156\145" + "\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\141\143\164\151\166\141\164\141\142\154\145\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164" + "\151\157\156\055\156\141\155\145\042\076\156\141\166\151\147\141" + "\164\151\157\156\056\160\165\163\150\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\141\143\164\151\157\156\055\164\141\162\147\145" + "\164\042\076\042\141\143\153\156\157\167\154\145\144\147\145\155" + "\145\156\164\163\042\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\166\151\163\151\142\154\145\042\040\142\151\156\144\055\163\157" + "\165\162\143\145\075\042\141\143\153\156\157\167\154\145\144\147" + "\145\155\145\156\164\163\137\142\157\170\042\040\142\151\156\144" + "\055\160\162\157\160\145\162\164\171\075\042\166\151\163\151\142" + "\154\145\042\040\142\151\156\144\055\146\154\141\147\163\075\042" + "\163\171\156\143\055\143\162\145\141\164\145\042\057\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\111\155\141\147\145\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\151\143" + "\157\156\055\156\141\155\145\042\076\147\157\055\156\145\170\164" + "\055\163\171\155\142\157\154\151\143\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\141\143\143\145\163\163\151\142\154\145\055\162" + "\157\154\145\042\076\160\162\145\163\145\156\164\141\164\151\157" + "\156\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160" + "\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\101\144\167\116\141\166\151\147\141" + "\164\151\157\156\120\141\147\145\042\040\151\144\075\042\167\150" + "\141\164\163\156\145\167\137\160\141\147\145\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164" + "\154\145\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\127\150\141\164\342\200\231\163\040" + "\116\145\167\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164\141" + "\147\042\076\167\150\141\164\163\156\145\167\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\124" + "\157\157\154\142\141\162\126\151\145\167\042\076\074\143\150\151" + "\154\144\040\164\171\160\145\075\042\164\157\160\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\110\145\141\144\145\162\102\141\162\042\057\076\074\057\143\150" + "\151\154\144\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\157\156\164\145\156\164\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123" + "\143\162\157\154\154\145\144\127\151\156\144\157\167\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150" + "\163\143\162\157\154\154\142\141\162\055\160\157\154\151\143\171" + "\042\076\156\145\166\145\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\163\165\142\160\141\147\145\042\057\076" + "\074\057\163\164\171\154\145\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\103\154\141\155\160\123\143\162\157\154\154\141\142\154\145" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\124\145\170\164\126" + "\151\145\167\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\154\145\146\164\055\155\141\162\147\151\156" + "\042\076\061\062\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\162" + "\151\147\150\164\055\155\141\162\147\151\156\042\076\061\062\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\164\157\160\055\155\141" + "\162\147\151\156\042\076\061\070\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\142\157\164\164\157\155\055\155\141\162\147\151\156" + "\042\076\061\070\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\167" + "\162\141\160\055\155\157\144\145\042\076\167\157\162\144\055\143" + "\150\141\162\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\145\144" + "\151\164\141\142\154\145\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\142\165\146\146\145\162\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\124\145\170\164\102\165\146\146\145\162\042\040\151\144" + "\075\042\162\145\154\145\141\163\145\137\156\157\164\145\163\137" + "\142\165\146\146\145\162\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\145\156\141\142\154\145\055\165" + "\156\144\157\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\160\162\157\160\145\162\164\171\076\074\141\143\143\145\163\163" + "\151\142\151\154\151\164\171\076\074\162\145\154\141\164\151\157" + "\156\040\156\141\155\145\075\042\154\141\142\145\154\154\145\144" + "\055\142\171\042\076\167\150\141\164\163\156\145\167\137\160\141" + "\147\145\074\057\162\145\154\141\164\151\157\156\076\074\057\141" + "\143\143\145\163\163\151\142\151\154\151\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143" + "\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\101\144\167\116\141\166\151\147\141\164\151\157" + "\156\120\141\147\145\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\164\151\164\154\145\042\040\164\162" + "\141\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042" + "\076\104\145\164\141\151\154\163\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\164\141\147\042\076\144\145\164\141\151\154\163\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\101\144\167\124\157\157\154\142\141\162\126\151\145\167\042\076" + "\074\143\150\151\154\144\040\164\171\160\145\075\042\164\157\160" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\110\145\141\144\145\162\102\141\162\042\057\076" + "\074\057\143\150\151\154\144\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\157\156\164\145\156\164\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\123\143\162\157\154\154\145\144\127\151\156\144\157" + "\167\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\150\163\143\162\157\154\154\142\141\162\055\160\157" + "\154\151\143\171\042\076\156\145\166\145\162\074\057\160\162\157" + "\160\145\162\164\171\076\074\163\164\171\154\145\076\074\143\154" + "\141\163\163\040\156\141\155\145\075\042\163\165\142\160\141\147" + "\145\042\057\076\074\057\163\164\171\154\145\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154" + "\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\103\154\141\155\160\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154" + "\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\102\157\170\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\157\162\151\145\156\164" + "\141\164\151\157\156\042\076\166\145\162\164\151\143\141\154\074" + "\057\160\162\157\160\145\162\164\171\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\114\141\142\145\154\042\040\151\144\075\042\143\157" + "\155\155\145\156\164\163\137\154\141\142\145\154\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151" + "\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\165\163\145\055\155\141\162\153\165" + "\160\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\167\162\141\160\042\076\124\162\165\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\167\162\141\160\055\155\157\144\145" + "\042\076\167\157\162\144\055\143\150\141\162\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\170\141\154\151\147\156\042\076\060\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\154\141\142\145\154\042" + "\040\142\151\156\144\055\163\157\165\162\143\145\075\042\101\144" + "\167\101\142\157\165\164\104\151\141\154\157\147\042\040\142\151" + "\156\144\055\160\162\157\160\145\162\164\171\075\042\143\157\155" + "\155\145\156\164\163\042\040\142\151\156\144\055\146\154\141\147" + "\163\075\042\163\171\156\143\055\143\162\145\141\164\145\042\057" + "\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042\141" + "\143\164\151\166\141\164\145\055\154\151\156\153\042\040\150\141" + "\156\144\154\145\162\075\042\141\143\164\151\166\141\164\145\137" + "\154\151\156\153\137\143\142\042\040\163\167\141\160\160\145\144" + "\075\042\171\145\163\042\057\076\074\163\164\171\154\145\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\142\157\144\171" + "\042\057\076\074\057\163\164\171\154\145\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\120\162\145\146\145\162\145\156\143\145\163" + "\107\162\157\165\160\042\040\151\144\075\042\154\151\156\153\163" + "\137\147\162\157\165\160\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\166\151\163\151\142\154\145\042" + "\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\101\144\167\101\143\164\151\157\156" + "\122\157\167\042\040\151\144\075\042\144\145\164\141\151\154\163" + "\137\167\145\142\163\151\164\145\137\162\157\167\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151" + "\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\164\151\164\154\145\042\040\164\162" + "\141\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042" + "\076\137\127\145\142\163\151\164\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\165\163\145\055\165\156\144\145\162\154\151\156" + "\145\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\141\143\164\151\166\141\164\141\142\154\145\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143" + "\164\151\157\156\055\156\141\155\145\042\076\141\142\157\165\164" + "\056\163\150\157\167\055\165\162\154\055\160\162\157\160\145\162" + "\164\171\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164" + "\151\157\156\055\164\141\162\147\145\164\042\076\042\167\145\142" + "\163\151\164\145\042\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\164\157\157\154\164\151\160\055\164\145\170\164\042\040\142\151" + "\156\144\055\163\157\165\162\143\145\075\042\101\144\167\101\142" + "\157\165\164\104\151\141\154\157\147\042\040\142\151\156\144\055" + "\160\162\157\160\145\162\164\171\075\042\167\145\142\163\151\164" + "\145\042\040\142\151\156\144\055\146\154\141\147\163\075\042\163" + "\171\156\143\055\143\162\145\141\164\145\042\057\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\111\155\141\147\145\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\151\143\157" + "\156\055\156\141\155\145\042\076\141\144\167\055\145\170\164\145" + "\162\156\141\154\055\154\151\156\153\055\163\171\155\142\157\154" + "\151\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\143" + "\145\163\163\151\142\154\145\055\162\157\154\145\042\076\160\162" + "\145\163\145\156\164\141\164\151\157\156\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076" + "\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160" + "\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\116\141\166\151\147\141\164\151\157\156\120\141\147\145" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\164\151\164\154\145\042\040\164\162\141\156\163\154\141" + "\164\141\142\154\145\075\042\171\145\163\042\076\124\162\157\165" + "\142\154\145\163\150\157\157\164\151\156\147\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\164\141\147\042\076\164\162\157\165\142" + "\154\145\163\150\157\157\164\151\156\147\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\124\157" + "\157\154\142\141\162\126\151\145\167\042\076\074\143\150\151\154" + "\144\040\164\171\160\145\075\042\164\157\160\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\110" + "\145\141\144\145\162\102\141\162\042\057\076\074\057\143\150\151" + "\154\144\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\143\157\156\164\145\156\164\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123\143" + "\162\157\154\154\145\144\127\151\156\144\157\167\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150\163" + "\143\162\157\154\154\142\141\162\055\160\157\154\151\143\171\042" + "\076\156\145\166\145\162\074\057\160\162\157\160\145\162\164\171" + "\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156" + "\141\155\145\075\042\163\165\142\160\141\147\145\042\057\076\074" + "\057\163\164\171\154\145\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\103\154\141\155\160\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\102\157\170\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\157\162\151\145\156\164\141\164\151\157\156" + "\042\076\166\145\162\164\151\143\141\154\074\057\160\162\157\160" + "\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\114\141" + "\142\145\154\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\167\162\141\160\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\167\162\141\160\055\155" + "\157\144\145\042\076\167\157\162\144\055\143\150\141\162\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\170\141\154\151\147\156\042" + "\076\060\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\154\141\142" + "\145\154\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\124\157\040\141\163\163\151\163\164" + "\040\151\156\040\164\162\157\165\142\154\145\163\150\157\157\164" + "\151\156\147\054\040\171\157\165\040\143\141\156\040\166\151\145" + "\167\040\171\157\165\162\040\144\145\142\165\147\147\151\156\147" + "\040\151\156\146\157\162\155\141\164\151\157\156\056\040\120\162" + "\157\166\151\144\151\156\147\040\164\150\151\163\040\151\156\146" + "\157\162\155\141\164\151\157\156\040\164\157\040\164\150\145\040" + "\141\160\160\154\151\143\141\164\151\157\156\040\144\145\166\145" + "\154\157\160\145\162\163\040\143\141\156\040\150\145\154\160\040" + "\144\151\141\147\156\157\163\145\040\141\156\171\040\160\162\157" + "\142\154\145\155\163\040\171\157\165\040\145\156\143\157\165\156" + "\164\145\162\040\167\150\145\156\040\171\157\165\040\162\145\160" + "\157\162\164\040\141\156\040\151\163\163\165\145\056\074\057\160" + "\162\157\160\145\162\164\171\076\074\163\151\147\156\141\154\040" + "\156\141\155\145\075\042\141\143\164\151\166\141\164\145\055\154" + "\151\156\153\042\040\150\141\156\144\154\145\162\075\042\141\143" + "\164\151\166\141\164\145\137\154\151\156\153\137\143\142\042\040" + "\163\167\141\160\160\145\144\075\042\171\145\163\042\057\076\074" + "\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155" + "\145\075\042\142\157\144\171\042\057\076\074\057\163\164\171\154" + "\145\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\120\162\145\146" + "\145\162\145\156\143\145\163\107\162\157\165\160\042\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\101\144\167\101\143\164\151\157\156\122\157\167" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\164\151\164\154\145\042\040\164\162\141\156\163\154\141" + "\164\141\142\154\145\075\042\171\145\163\042\076\137\104\145\142" + "\165\147\147\151\156\147\040\111\156\146\157\162\155\141\164\151" + "\157\156\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\165\163\145" + "\055\165\156\144\145\162\154\151\156\145\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151\166" + "\141\164\141\142\154\145\042\076\124\162\165\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\141\143\164\151\157\156\055\156\141" + "\155\145\042\076\156\141\166\151\147\141\164\151\157\156\056\160" + "\165\163\150\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143" + "\164\151\157\156\055\164\141\162\147\145\164\042\076\042\144\145" + "\142\165\147\151\156\146\157\042\074\057\160\162\157\160\145\162" + "\164\171\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\164\153\111\155\141\147" + "\145\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\151\143\157\156\055\156\141\155\145\042\076\147\157" + "\055\156\145\170\164\055\163\171\155\142\157\154\151\143\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\141\143\143\145\163\163\151" + "\142\154\145\055\162\157\154\145\042\076\160\162\145\163\145\156" + "\164\141\164\151\157\156\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057\160" + "\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076" + "\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\116\141" + "\166\151\147\141\164\151\157\156\120\141\147\145\042\040\151\144" + "\075\042\144\145\142\165\147\137\151\156\146\157\137\160\141\147" + "\145\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\164\151\164\154\145\042\040\164\162\141\156\163\154" + "\141\164\141\142\154\145\075\042\171\145\163\042\076\104\145\142" + "\165\147\147\151\156\147\040\111\156\146\157\162\155\141\164\151" + "\157\156\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\141\147" + "\042\076\144\145\142\165\147\151\156\146\157\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\124" + "\157\157\154\142\141\162\126\151\145\167\042\076\074\143\150\151" + "\154\144\040\164\171\160\145\075\042\164\157\160\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\110\145\141\144\145\162\102\141\162\042\057\076\074\057\143\150" + "\151\154\144\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\157\156\164\145\156\164\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123" + "\143\162\157\154\154\145\144\127\151\156\144\157\167\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150" + "\163\143\162\157\154\154\142\141\162\055\160\157\154\151\143\171" + "\042\076\156\145\166\145\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\163\165\142\160\141\147\145\042\057\076" + "\074\057\163\164\171\154\145\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\103\154\141\155\160\123\143\162\157\154\154\141\142\154\145" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\124\145\170\164\126" + "\151\145\167\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\154\145\146\164\055\155\141\162\147\151\156" + "\042\076\061\062\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\162" + "\151\147\150\164\055\155\141\162\147\151\156\042\076\061\062\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\164\157\160\055\155\141" + "\162\147\151\156\042\076\061\070\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\142\157\164\164\157\155\055\155\141\162\147\151\156" + "\042\076\061\070\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\167" + "\162\141\160\055\155\157\144\145\042\076\167\157\162\144\055\143" + "\150\141\162\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\145\144" + "\151\164\141\142\154\145\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\142\165\146\146\145\162\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\124\145\170\164\102\165\146\146\145\162\042\040\151\144" + "\075\042\144\145\142\165\147\137\151\156\146\157\137\142\165\146" + "\146\145\162\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\145\156\141\142\154\145\055\165\156\144\157" + "\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\164\145\170\164\042\040\142\151\156\144\055\163\157\165" + "\162\143\145\075\042\101\144\167\101\142\157\165\164\104\151\141" + "\154\157\147\042\040\142\151\156\144\055\160\162\157\160\145\162" + "\164\171\075\042\144\145\142\165\147\055\151\156\146\157\042\040" + "\142\151\156\144\055\146\154\141\147\163\075\042\163\171\156\143" + "\055\143\162\145\141\164\145\042\057\076\074\057\157\142\152\145" + "\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074\141" + "\143\143\145\163\163\151\142\151\154\151\164\171\076\074\162\145" + "\154\141\164\151\157\156\040\156\141\155\145\075\042\154\141\142" + "\145\154\154\145\144\055\142\171\042\076\144\145\142\165\147\137" + "\151\156\146\157\137\160\141\147\145\074\057\162\145\154\141\164" + "\151\157\156\076\074\057\141\143\143\145\163\163\151\142\151\154" + "\151\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160" + "\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076" + "\074\143\150\151\154\144\040\164\171\160\145\075\042\142\157\164" + "\164\157\155\042\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\101\143\164\151\157\156\102\141\162" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\162\145\166\145\141\154\145\144\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\102\165\164\164\157\156\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\157\156\055\156\141\155\145\042\076\141\142\157\165\164\056\143" + "\157\160\171\055\160\162\157\160\145\162\164\171\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\141\143\164\151\157\156\055\164\141" + "\162\147\145\164\042\076\042\144\145\142\165\147\055\151\156\146" + "\157\042\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\154\141\142" + "\145\154\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\137\103\157\160\171\040\124\145\170" + "\164\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\165\163\145\055" + "\165\156\144\145\162\154\151\156\145\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\141\156\055\163\150" + "\162\151\156\153\042\076\124\162\165\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\040\164\171\160" + "\145\075\042\145\156\144\042\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\102\165\164\164\157\156" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\141\143\164\151\157\156\055\156\141\155\145\042\076\141" + "\142\157\165\164\056\163\141\166\145\055\144\145\142\165\147\055" + "\151\156\146\157\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\154" + "\141\142\145\154\042\040\164\162\141\156\163\154\141\164\141\142" + "\154\145\075\042\171\145\163\042\076\137\123\141\166\145\040\101" + "\163\342\200\246\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\165" + "\163\145\055\165\156\144\145\162\154\151\156\145\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\141\156" + "\055\163\150\162\151\156\153\042\076\124\162\165\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145" + "\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\116\141\166\151\147\141\164\151" + "\157\156\120\141\147\145\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\164\151\164\154\145\042\040\164" + "\162\141\156\163\154\141\164\141\142\154\145\075\042\171\145\163" + "\042\076\103\162\145\144\151\164\163\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\164\141\147\042\076\143\162\145\144\151\164\163" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\124\157\157\154\142\141\162\126\151\145\167\042" + "\076\074\143\150\151\154\144\040\164\171\160\145\075\042\164\157" + "\160\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\110\145\141\144\145\162\102\141\162\042\057" + "\076\074\057\143\150\151\154\144\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\143\157\156\164\145\156\164" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\123\143\162\157\154\154\145\144\127\151\156\144" + "\157\167\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\150\163\143\162\157\154\154\142\141\162\055\160" + "\157\154\151\143\171\042\076\156\145\166\145\162\074\057\160\162" + "\157\160\145\162\164\171\076\074\163\164\171\154\145\076\074\143" + "\154\141\163\163\040\156\141\155\145\075\042\163\165\142\160\141" + "\147\145\042\057\076\074\057\163\164\171\154\145\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151" + "\154\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\101\144\167\103\154\141\155\160\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151" + "\154\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\102\157\170\042\040\151\144\075\042\143" + "\162\145\144\151\164\163\137\142\157\170\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\157\162\151\145" + "\156\164\141\164\151\157\156\042\076\166\145\162\164\151\143\141" + "\154\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143" + "\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\116" + "\141\166\151\147\141\164\151\157\156\120\141\147\145\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164" + "\151\164\154\145\042\040\164\162\141\156\163\154\141\164\141\142" + "\154\145\075\042\171\145\163\042\076\114\145\147\141\154\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\164\141\147\042\076\154\145" + "\147\141\154\074\057\160\162\157\160\145\162\164\171\076\074\163" + "\151\147\156\141\154\040\156\141\155\145\075\042\163\150\157\167" + "\151\156\147\042\040\150\141\156\144\154\145\162\075\042\154\145" + "\147\141\154\137\163\150\157\167\151\156\147\137\143\142\042\040" + "\163\167\141\160\160\145\144\075\042\171\145\163\042\057\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143" + "\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\124\157\157\154\142\141\162\126" + "\151\145\167\042\076\074\143\150\151\154\144\040\164\171\160\145" + "\075\042\164\157\160\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\101\144\167\110\145\141\144\145\162\102" + "\141\162\042\057\076\074\057\143\150\151\154\144\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\157\156" + "\164\145\156\164\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\107\164\153\123\143\162\157\154\154\145\144" + "\127\151\156\144\157\167\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\150\163\143\162\157\154\154\142" + "\141\162\055\160\157\154\151\143\171\042\076\156\145\166\145\162" + "\074\057\160\162\157\160\145\162\164\171\076\074\163\164\171\154" + "\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042\163" + "\165\142\160\141\147\145\042\057\076\074\057\163\164\171\154\145" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\101\144\167\103\154\141\155\160\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\102\157\170\042\040\151" + "\144\075\042\154\145\147\141\154\137\142\157\170\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\157\162" + "\151\145\156\164\141\164\151\157\156\042\076\166\145\162\164\151" + "\143\141\154\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151" + "\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\116\141\166\151\147\141\164\151\157\156\120\141\147\145\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\164\151\164\154\145\042\040\164\162\141\156\163\154\141\164" + "\141\142\154\145\075\042\171\145\163\042\076\101\143\153\156\157" + "\167\154\145\144\147\145\155\145\156\164\163\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\164\141\147\042\076\141\143\153\156\157" + "\167\154\145\144\147\145\155\145\156\164\163\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\124" + "\157\157\154\142\141\162\126\151\145\167\042\076\074\143\150\151" + "\154\144\040\164\171\160\145\075\042\164\157\160\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\110\145\141\144\145\162\102\141\162\042\057\076\074\057\143\150" + "\151\154\144\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\157\156\164\145\156\164\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123" + "\143\162\157\154\154\145\144\127\151\156\144\157\167\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150" + "\163\143\162\157\154\154\142\141\162\055\160\157\154\151\143\171" + "\042\076\156\145\166\145\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\163\165\142\160\141\147\145\042\057\076" + "\074\057\163\164\171\154\145\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\103\154\141\155\160\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\102\157\170\042\040\151\144\075\042\141\143\153\156\157\167" + "\154\145\144\147\145\155\145\156\164\163\137\142\157\170\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\157\162\151\145\156\164\141\164\151\157\156\042\076\166\145\162" + "\164\151\143\141\154\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143" + "\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145" + "\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057" + "\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164" + "\171\076\074\057\164\145\155\160\154\141\164\145\076\074\057\151" + "\156\164\145\162\146\141\143\145\076\012\000\000\050\165\165\141" + "\171\051\141\144\167\055\141\142\157\165\164\055\167\151\156\144" + "\157\167\056\165\151\000\000\000\350\104\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\101\142\157" + "\165\164\127\151\156\144\157\167\042\040\160\141\162\145\156\164" + "\075\042\101\144\167\127\151\156\144\157\167\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164" + "\154\145\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\101\142\157\165\164\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\144\145\146\141\165\154\164\055\167" + "\151\144\164\150\042\076\063\066\060\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\167\151\144\164\150\055\162\145\161\165\145\163" + "\164\042\076\063\066\060\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\150\145\151\147\150\164\055\162\145\161\165\145\163\164\042" + "\076\062\071\064\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\155" + "\157\144\141\154\042\076\124\162\165\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\144\145\163\164\162\157\171\055\167\151\164" + "\150\055\160\141\162\145\156\164\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\163\164\171\154\145\076" + "\074\143\154\141\163\163\040\156\141\155\145\075\042\141\142\157" + "\165\164\042\057\076\074\057\163\164\171\154\145\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\157\156" + "\164\145\156\164\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\124\157\141\163\164\117\166\145" + "\162\154\141\171\042\040\151\144\075\042\164\157\141\163\164\137" + "\157\166\145\162\154\141\171\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\116\141\166\151\147\141\164\151\157\156\126\151\145\167" + "\042\040\151\144\075\042\156\141\166\151\147\141\164\151\157\156" + "\137\166\151\145\167\042\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\116\141\166\151\147\141\164\151\157\156\120\141\147\145\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\164\151\164\154\145\042\040\142\151\156\144\055\163\157\165\162" + "\143\145\075\042\101\144\167\101\142\157\165\164\127\151\156\144" + "\157\167\042\040\142\151\156\144\055\160\162\157\160\145\162\164" + "\171\075\042\164\151\164\154\145\042\040\142\151\156\144\055\146" + "\154\141\147\163\075\042\163\171\156\143\055\143\162\145\141\164" + "\145\042\057\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\124\157\157" + "\154\142\141\162\126\151\145\167\042\076\074\143\150\151\154\144" + "\040\164\171\160\145\075\042\164\157\160\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\110\145" + "\141\144\145\162\102\141\162\042\040\151\144\075\042\155\141\151" + "\156\137\150\145\141\144\145\162\142\141\162\042\057\076\074\057" + "\143\150\151\154\144\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\157\156\164\145\156\164\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\123\143\162\157\154\154\145\144\127\151\156\144\157\167\042" + "\040\151\144\075\042\155\141\151\156\137\163\143\162\157\154\154" + "\145\144\137\167\151\156\144\157\167\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\150\163\143\162\157" + "\154\154\142\141\162\055\160\157\154\151\143\171\042\076\156\145" + "\166\145\162\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\160\162" + "\157\160\141\147\141\164\145\055\156\141\164\165\162\141\154\055" + "\167\151\144\164\150\042\076\124\162\165\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\160\162\157\160\141\147\141\164\145\055" + "\156\141\164\165\162\141\154\055\150\145\151\147\150\164\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\155" + "\141\170\055\143\157\156\164\145\156\164\055\150\145\151\147\150" + "\164\042\076\066\060\060\074\057\160\162\157\160\145\162\164\171" + "\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156" + "\141\155\145\075\042\155\141\151\156\055\160\141\147\145\042\057" + "\076\074\057\163\164\171\154\145\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\103\154\141\155\160\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\102\157\170\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\157\162\151\145\156\164\141\164\151" + "\157\156\042\076\166\145\162\164\151\143\141\154\074\057\160\162" + "\157\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\111\155\141\147\145\042\040\151\144\075\042\141\160\160\137\151" + "\143\157\156\137\151\155\141\147\145\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151\142" + "\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\160\151\170\145\154\055\163\151\172\145\042\076" + "\061\062\070\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\151\143" + "\157\156\055\156\141\155\145\042\040\142\151\156\144\055\163\157" + "\165\162\143\145\075\042\101\144\167\101\142\157\165\164\127\151" + "\156\144\157\167\042\040\142\151\156\144\055\160\162\157\160\145" + "\162\164\171\075\042\141\160\160\154\151\143\141\164\151\157\156" + "\055\151\143\157\156\042\040\142\151\156\144\055\146\154\141\147" + "\163\075\042\163\171\156\143\055\143\162\145\141\164\145\042\057" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\141\143\143\145\163\163\151\142\154\145\055\162\157\154\145" + "\042\076\160\162\145\163\145\156\164\141\164\151\157\156\074\057" + "\160\162\157\160\145\162\164\171\076\074\163\164\171\154\145\076" + "\074\143\154\141\163\163\040\156\141\155\145\075\042\151\143\157" + "\156\055\144\162\157\160\163\150\141\144\157\167\042\057\076\074" + "\057\163\164\171\154\145\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\114\141\142\145\154\042\040\151\144\075\042\141\160\160\137" + "\156\141\155\145\137\154\141\142\145\154\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\167\162\141\160\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\152\165\163\164\151\146" + "\171\042\076\143\145\156\164\145\162\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\154\141\142\145\154\042\040\142\151\156\144\055" + "\163\157\165\162\143\145\075\042\101\144\167\101\142\157\165\164" + "\127\151\156\144\157\167\042\040\142\151\156\144\055\160\162\157" + "\160\145\162\164\171\075\042\141\160\160\154\151\143\141\164\151" + "\157\156\055\156\141\155\145\042\040\142\151\156\144\055\146\154" + "\141\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145" + "\042\057\076\074\163\164\171\154\145\076\074\143\154\141\163\163" + "\040\156\141\155\145\075\042\164\151\164\154\145\055\061\042\057" + "\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\114\141\142\145\154\042\040\151\144\075\042\144\145" + "\166\145\154\157\160\145\162\137\156\141\155\145\137\154\141\142" + "\145\154\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\166\151\163\151\142\154\145\042\076\106\141\154" + "\163\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\167\162\141" + "\160\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\152\165\163\164\151\146\171\042\076\143\145\156\164\145" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\154\141\142\145" + "\154\042\040\142\151\156\144\055\163\157\165\162\143\145\075\042" + "\101\144\167\101\142\157\165\164\127\151\156\144\157\167\042\040" + "\142\151\156\144\055\160\162\157\160\145\162\164\171\075\042\144" + "\145\166\145\154\157\160\145\162\055\156\141\155\145\042\040\142" + "\151\156\144\055\146\154\141\147\163\075\042\163\171\156\143\055" + "\143\162\145\141\164\145\042\057\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\102\165\164\164\157\156\042\040\151\144\075\042\166" + "\145\162\163\151\157\156\137\142\165\164\164\157\156\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166" + "\151\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\150\141\154\151\147\156\042\076" + "\143\145\156\164\145\162\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\141\143\164\151\157\156\055\156\141\155\145\042\076\141\142" + "\157\165\164\056\143\157\160\171\055\160\162\157\160\145\162\164" + "\171\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\157\156\055\164\141\162\147\145\164\042\076\042\166\145\162\163" + "\151\157\156\042\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143" + "\141\156\055\163\150\162\151\156\153\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\154\141\142\145\154\042" + "\040\142\151\156\144\055\163\157\165\162\143\145\075\042\101\144" + "\167\101\142\157\165\164\127\151\156\144\157\167\042\040\142\151" + "\156\144\055\160\162\157\160\145\162\164\171\075\042\166\145\162" + "\163\151\157\156\042\040\142\151\156\144\055\146\154\141\147\163" + "\075\042\163\171\156\143\055\143\162\145\141\164\145\042\057\076" + "\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141" + "\155\145\075\042\141\160\160\055\166\145\162\163\151\157\156\042" + "\057\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\102\157\170\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\157\162\151\145\156\164\141" + "\164\151\157\156\042\076\166\145\162\164\151\143\141\154\074\057" + "\160\162\157\160\145\162\164\171\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\120\162\145\146\145\162\145\156\143\145\163\107\162\157" + "\165\160\042\040\151\144\075\042\144\145\164\141\151\154\163\137" + "\147\162\157\165\160\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\166\151\163\151\142\154\145\042\076" + "\106\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\101\144\167\101\143\164\151\157\156\122" + "\157\167\042\040\151\144\075\042\167\150\141\164\163\137\156\145" + "\167\137\162\157\167\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\166\151\163\151\142\154\145\042\076" + "\106\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\164\151\164\154\145\042\040\164\162\141\156\163\154\141\164\141" + "\142\154\145\075\042\171\145\163\042\076\137\127\150\141\164\342" + "\200\231\163\040\116\145\167\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042" + "\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\141\143\164\151\166\141\164\141\142\154\145\042\076\124\162\165" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\157\156\055\156\141\155\145\042\076\156\141\166\151\147\141\164" + "\151\157\156\056\160\165\163\150\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\141\143\164\151\157\156\055\164\141\162\147\145\164" + "\042\076\042\167\150\141\164\163\156\145\167\042\074\057\160\162" + "\157\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\111\155\141\147\145\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\151\143\157\156\055\156\141\155\145" + "\042\076\147\157\055\156\145\170\164\055\163\171\155\142\157\154" + "\151\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\143" + "\145\163\163\151\142\154\145\055\162\157\154\145\042\076\160\162" + "\145\163\145\156\164\141\164\151\157\156\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\101\143\164\151\157\156\122\157\167\042\040\151\144\075\042\144" + "\145\164\141\151\154\163\137\162\157\167\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\164\151\164\154\145\042\040\164\162\141\156" + "\163\154\141\164\141\142\154\145\075\042\171\145\163\042\076\137" + "\104\145\164\141\151\154\163\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042" + "\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\141\143\164\151\166\141\164\141\142\154\145\042\076\124\162\165" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\157\156\055\156\141\155\145\042\076\156\141\166\151\147\141\164" + "\151\157\156\056\160\165\163\150\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\141\143\164\151\157\156\055\164\141\162\147\145\164" + "\042\076\042\144\145\164\141\151\154\163\042\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\111" + "\155\141\147\145\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\151\143\157\156\055\156\141\155\145\042" + "\076\147\157\055\156\145\170\164\055\163\171\155\142\157\154\151" + "\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\143\145" + "\163\163\151\142\154\145\055\162\157\154\145\042\076\160\162\145" + "\163\145\156\164\141\164\151\157\156\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\101" + "\143\164\151\157\156\122\157\167\042\040\151\144\075\042\167\145" + "\142\163\151\164\145\137\162\157\167\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151\142" + "\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\164\151\164\154\145\042\040\164\162\141\156\163" + "\154\141\164\141\142\154\145\075\042\171\145\163\042\076\137\127" + "\145\142\163\151\164\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141" + "\143\164\151\166\141\164\141\142\154\145\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151\157" + "\156\055\156\141\155\145\042\076\141\142\157\165\164\056\163\150" + "\157\167\055\165\162\154\055\160\162\157\160\145\162\164\171\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\164\151\157\156" + "\055\164\141\162\147\145\164\042\076\042\167\145\142\163\151\164" + "\145\042\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\157\157" + "\154\164\151\160\055\164\145\170\164\042\040\142\151\156\144\055" + "\163\157\165\162\143\145\075\042\101\144\167\101\142\157\165\164" + "\127\151\156\144\157\167\042\040\142\151\156\144\055\160\162\157" + "\160\145\162\164\171\075\042\167\145\142\163\151\164\145\042\040" + "\142\151\156\144\055\146\154\141\147\163\075\042\163\171\156\143" + "\055\143\162\145\141\164\145\042\057\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\111\155\141\147\145\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\151\143\157\156\055\156" + "\141\155\145\042\076\141\144\167\055\145\170\164\145\162\156\141" + "\154\055\154\151\156\153\055\163\171\155\142\157\154\151\143\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\143\145\163\163" + "\151\142\154\145\055\162\157\154\145\042\076\160\162\145\163\145" + "\156\164\141\164\151\157\156\074\057\160\162\157\160\145\162\164" + "\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\120\162" + "\145\146\145\162\145\156\143\145\163\107\162\157\165\160\042\040" + "\151\144\075\042\163\165\160\160\157\162\164\137\147\162\157\165" + "\160\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\166\151\163\151\142\154\145\042\076\106\141\154\163" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\101\143\164\151\157\156\122\157\167\042\040" + "\151\144\075\042\163\165\160\160\157\162\164\137\162\157\167\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\164\151\166\141" + "\164\141\142\154\145\042\076\124\162\165\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\164\151\164\154\145\042\040\164\162\141" + "\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042\076" + "\137\123\165\160\160\157\162\164\040\121\165\145\163\164\151\157" + "\156\163\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\165\163\145" + "\055\165\156\144\145\162\154\151\156\145\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151\157" + "\156\055\156\141\155\145\042\076\141\142\157\165\164\056\163\150" + "\157\167\055\165\162\154\055\160\162\157\160\145\162\164\171\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\164\151\157\156" + "\055\164\141\162\147\145\164\042\076\042\163\165\160\160\157\162" + "\164\055\165\162\154\042\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\164\157\157\154\164\151\160\055\164\145\170\164\042\040\142" + "\151\156\144\055\163\157\165\162\143\145\075\042\101\144\167\101" + "\142\157\165\164\127\151\156\144\157\167\042\040\142\151\156\144" + "\055\160\162\157\160\145\162\164\171\075\042\163\165\160\160\157" + "\162\164\055\165\162\154\042\040\142\151\156\144\055\146\154\141" + "\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145\042" + "\057\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\111\155\141\147\145" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\151\143\157\156\055\156\141\155\145\042\076\141\144\167" + "\055\145\170\164\145\162\156\141\154\055\154\151\156\153\055\163" + "\171\155\142\157\154\151\143\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\141\143\143\145\163\163\151\142\154\145\055\162\157\154" + "\145\042\076\160\162\145\163\145\156\164\141\164\151\157\156\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\101\143\164\151\157\156\122\157\167\042\040" + "\151\144\075\042\151\163\163\165\145\137\162\157\167\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166" + "\151\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\141\143\164\151\166\141\164\141" + "\142\154\145\042\076\124\162\165\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\164\151\164\154\145\042\040\164\162\141\156\163" + "\154\141\164\141\142\154\145\075\042\171\145\163\042\076\137\122" + "\145\160\157\162\164\040\141\156\040\111\163\163\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\165\163\145\055\165\156\144" + "\145\162\154\151\156\145\042\076\124\162\165\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\141\143\164\151\157\156\055\156\141" + "\155\145\042\076\141\142\157\165\164\056\163\150\157\167\055\165" + "\162\154\055\160\162\157\160\145\162\164\171\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\141\143\164\151\157\156\055\164\141\162" + "\147\145\164\042\076\042\151\163\163\165\145\055\165\162\154\042" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\164\157\157\154\164" + "\151\160\055\164\145\170\164\042\040\142\151\156\144\055\163\157" + "\165\162\143\145\075\042\101\144\167\101\142\157\165\164\127\151" + "\156\144\157\167\042\040\142\151\156\144\055\160\162\157\160\145" + "\162\164\171\075\042\151\163\163\165\145\055\165\162\154\042\040" + "\142\151\156\144\055\146\154\141\147\163\075\042\163\171\156\143" + "\055\143\162\145\141\164\145\042\057\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\111\155\141\147\145\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\151\143\157\156\055\156" + "\141\155\145\042\076\141\144\167\055\145\170\164\145\162\156\141" + "\154\055\154\151\156\153\055\163\171\155\142\157\154\151\143\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\143\145\163\163" + "\151\142\154\145\055\162\157\154\145\042\076\160\162\145\163\145" + "\156\164\141\164\151\157\156\074\057\160\162\157\160\145\162\164" + "\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\101\143\164" + "\151\157\156\122\157\167\042\040\151\144\075\042\164\162\157\165" + "\142\154\145\163\150\157\157\164\151\156\147\137\162\157\167\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\164\151\164\154\145\042" + "\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042\171" + "\145\163\042\076\137\124\162\157\165\142\154\145\163\150\157\157" + "\164\151\156\147\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\165" + "\163\145\055\165\156\144\145\162\154\151\156\145\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164" + "\151\166\141\164\141\142\154\145\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\141\143\164\151\157\156\055" + "\156\141\155\145\042\076\156\141\166\151\147\141\164\151\157\156" + "\056\160\165\163\150\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\141\143\164\151\157\156\055\164\141\162\147\145\164\042\076\042" + "\164\162\157\165\142\154\145\163\150\157\157\164\151\156\147\042" + "\074\057\160\162\157\160\145\162\164\171\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\111\155\141\147\145\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\151\143\157\156\055" + "\156\141\155\145\042\076\147\157\055\156\145\170\164\055\163\171" + "\155\142\157\154\151\143\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\141\143\143\145\163\163\151\142\154\145\055\162\157\154\145" + "\042\076\160\162\145\163\145\156\164\141\164\151\157\156\074\057" + "\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\120\162\145\146\145\162\145\156\143\145\163" + "\107\162\157\165\160\042\040\151\144\075\042\143\162\145\144\151" + "\164\163\137\154\145\147\141\154\137\147\162\157\165\160\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\101\143\164\151\157\156\122\157\167\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164" + "\154\145\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\137\103\162\145\144\151\164\163\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\165\163\145\055\165\156" + "\144\145\162\154\151\156\145\042\076\124\162\165\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\141\143\164\151\166\141\164\141" + "\142\154\145\042\076\124\162\165\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\141\143\164\151\157\156\055\156\141\155\145\042" + "\076\156\141\166\151\147\141\164\151\157\156\056\160\165\163\150" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151\157" + "\156\055\164\141\162\147\145\164\042\076\042\143\162\145\144\151" + "\164\163\042\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151" + "\163\151\142\154\145\042\040\142\151\156\144\055\163\157\165\162" + "\143\145\075\042\143\162\145\144\151\164\163\137\142\157\170\042" + "\040\142\151\156\144\055\160\162\157\160\145\162\164\171\075\042" + "\166\151\163\151\142\154\145\042\040\142\151\156\144\055\146\154" + "\141\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145" + "\042\057\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\164\153\111\155\141\147" + "\145\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\151\143\157\156\055\156\141\155\145\042\076\147\157" + "\055\156\145\170\164\055\163\171\155\142\157\154\151\143\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\141\143\143\145\163\163\151" + "\142\154\145\055\162\157\154\145\042\076\160\162\145\163\145\156" + "\164\141\164\151\157\156\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\101\143\164\151" + "\157\156\122\157\167\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\164\151\164\154\145\042\040\164\162" + "\141\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042" + "\076\137\114\145\147\141\154\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042" + "\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\141\143\164\151\166\141\164\141\142\154\145\042\076\124\162\165" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\157\156\055\156\141\155\145\042\076\156\141\166\151\147\141\164" + "\151\157\156\056\160\165\163\150\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\141\143\164\151\157\156\055\164\141\162\147\145\164" + "\042\076\042\154\145\147\141\154\042\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\166\151\163\151\142\154\145\042\040\142\151\156" + "\144\055\163\157\165\162\143\145\075\042\154\145\147\141\154\137" + "\142\157\170\042\040\142\151\156\144\055\160\162\157\160\145\162" + "\164\171\075\042\166\151\163\151\142\154\145\042\040\142\151\156" + "\144\055\146\154\141\147\163\075\042\163\171\156\143\055\143\162" + "\145\141\164\145\042\057\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\111\155\141\147\145\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\151\143\157\156\055\156\141\155\145" + "\042\076\147\157\055\156\145\170\164\055\163\171\155\142\157\154" + "\151\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\143" + "\145\163\163\151\142\154\145\055\162\157\154\145\042\076\160\162" + "\145\163\145\156\164\141\164\151\157\156\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\101\143\164\151\157\156\122\157\167\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\164\151\164\154\145" + "\042\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042" + "\171\145\163\042\076\137\101\143\153\156\157\167\154\145\144\147" + "\145\155\145\156\164\163\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141" + "\143\164\151\166\141\164\141\142\154\145\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151\157" + "\156\055\156\141\155\145\042\076\156\141\166\151\147\141\164\151" + "\157\156\056\160\165\163\150\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\141\143\164\151\157\156\055\164\141\162\147\145\164\042" + "\076\042\141\143\153\156\157\167\154\145\144\147\145\155\145\156" + "\164\163\042\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151" + "\163\151\142\154\145\042\040\142\151\156\144\055\163\157\165\162" + "\143\145\075\042\141\143\153\156\157\167\154\145\144\147\145\155" + "\145\156\164\163\137\142\157\170\042\040\142\151\156\144\055\160" + "\162\157\160\145\162\164\171\075\042\166\151\163\151\142\154\145" + "\042\040\142\151\156\144\055\146\154\141\147\163\075\042\163\171" + "\156\143\055\143\162\145\141\164\145\042\057\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\111\155\141\147\145\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\151\143\157\156" + "\055\156\141\155\145\042\076\147\157\055\156\145\170\164\055\163" + "\171\155\142\157\154\151\143\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\141\143\143\145\163\163\151\142\154\145\055\162\157\154" + "\145\042\076\160\162\145\163\145\156\164\141\164\151\157\156\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057" + "\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164" + "\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\116\141\166\151\147\141\164\151" + "\157\156\120\141\147\145\042\040\151\144\075\042\167\150\141\164" + "\163\156\145\167\137\160\141\147\145\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\164\151\164\154\145" + "\042\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042" + "\171\145\163\042\076\127\150\141\164\342\200\231\163\040\116\145" + "\167\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\164\141\147\042" + "\076\167\150\141\164\163\156\145\167\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\124\157\157" + "\154\142\141\162\126\151\145\167\042\076\074\143\150\151\154\144" + "\040\164\171\160\145\075\042\164\157\160\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\110\145" + "\141\144\145\162\102\141\162\042\057\076\074\057\143\150\151\154" + "\144\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\157\156\164\145\156\164\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\107\164\153\123\143\162" + "\157\154\154\145\144\127\151\156\144\157\167\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\150\163\143" + "\162\157\154\154\142\141\162\055\160\157\154\151\143\171\042\076" + "\156\145\166\145\162\074\057\160\162\157\160\145\162\164\171\076" + "\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141" + "\155\145\075\042\163\165\142\160\141\147\145\042\057\076\074\057" + "\163\164\171\154\145\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\103" + "\154\141\155\160\123\143\162\157\154\154\141\142\154\145\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\124\145\170\164\126\151\145" + "\167\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\154\145\146\164\055\155\141\162\147\151\156\042\076" + "\061\062\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\162\151\147" + "\150\164\055\155\141\162\147\151\156\042\076\061\062\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\164\157\160\055\155\141\162\147" + "\151\156\042\076\061\070\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\142\157\164\164\157\155\055\155\141\162\147\151\156\042\076" + "\061\070\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\167\162\141" + "\160\055\155\157\144\145\042\076\167\157\162\144\055\143\150\141" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\145\144\151\164" + "\141\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\142\165\146\146\145\162\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\124\145\170\164\102\165\146\146\145\162\042\040\151\144\075\042" + "\162\145\154\145\141\163\145\137\156\157\164\145\163\137\142\165" + "\146\146\145\162\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\145\156\141\142\154\145\055\165\156\144" + "\157\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\141\143\143\145\163\163\151\142" + "\151\154\151\164\171\076\074\162\145\154\141\164\151\157\156\040" + "\156\141\155\145\075\042\154\141\142\145\154\154\145\144\055\142" + "\171\042\076\167\150\141\164\163\156\145\167\137\160\141\147\145" + "\074\057\162\145\154\141\164\151\157\156\076\074\057\141\143\143" + "\145\163\163\151\142\151\154\151\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\116\141\166\151\147\141\164\151\157\156\120" + "\141\147\145\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\164\151\164\154\145\042\040\164\162\141\156" + "\163\154\141\164\141\142\154\145\075\042\171\145\163\042\076\104" + "\145\164\141\151\154\163\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\164\141\147\042\076\144\145\164\141\151\154\163\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\124\157\157\154\142\141\162\126\151\145\167\042\076\074\143" + "\150\151\154\144\040\164\171\160\145\075\042\164\157\160\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\110\145\141\144\145\162\102\141\162\042\057\076\074\057" + "\143\150\151\154\144\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\157\156\164\145\156\164\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\123\143\162\157\154\154\145\144\127\151\156\144\157\167\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\150\163\143\162\157\154\154\142\141\162\055\160\157\154\151" + "\143\171\042\076\156\145\166\145\162\074\057\160\162\157\160\145" + "\162\164\171\076\074\163\164\171\154\145\076\074\143\154\141\163" + "\163\040\156\141\155\145\075\042\163\165\142\160\141\147\145\042" + "\057\076\074\057\163\164\171\154\145\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\101\144\167\103\154\141\155\160\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\102\157\170\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\157\162\151\145\156\164\141\164" + "\151\157\156\042\076\166\145\162\164\151\143\141\154\074\057\160" + "\162\157\160\145\162\164\171\076\074\143\150\151\154\144\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\114\141\142\145\154\042\040\151\144\075\042\143\157\155\155" + "\145\156\164\163\137\154\141\142\145\154\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\165\163\145\055\155\141\162\153\165\160\042" + "\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\167\162\141\160\042\076\124\162\165\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\167\162\141\160\055\155\157\144\145\042\076" + "\167\157\162\144\055\143\150\141\162\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\170\141\154\151\147\156\042\076\060\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\154\141\142\145\154\042\040\142" + "\151\156\144\055\163\157\165\162\143\145\075\042\101\144\167\101" + "\142\157\165\164\127\151\156\144\157\167\042\040\142\151\156\144" + "\055\160\162\157\160\145\162\164\171\075\042\143\157\155\155\145" + "\156\164\163\042\040\142\151\156\144\055\146\154\141\147\163\075" + "\042\163\171\156\143\055\143\162\145\141\164\145\042\057\076\074" + "\163\151\147\156\141\154\040\156\141\155\145\075\042\141\143\164" + "\151\166\141\164\145\055\154\151\156\153\042\040\150\141\156\144" + "\154\145\162\075\042\141\143\164\151\166\141\164\145\137\154\151" + "\156\153\137\143\142\042\040\163\167\141\160\160\145\144\075\042" + "\171\145\163\042\057\076\074\163\164\171\154\145\076\074\143\154" + "\141\163\163\040\156\141\155\145\075\042\142\157\144\171\042\057" + "\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\101\144\167\120\162\145\146\145\162\145\156\143\145\163\107\162" + "\157\165\160\042\040\151\144\075\042\154\151\156\153\163\137\147" + "\162\157\165\160\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\166\151\163\151\142\154\145\042\076\106" + "\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\101\143\164\151\157\156\122\157" + "\167\042\040\151\144\075\042\144\145\164\141\151\154\163\137\167" + "\145\142\163\151\164\145\137\162\157\167\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\164\151\164\154\145\042\040\164\162\141\156" + "\163\154\141\164\141\142\154\145\075\042\171\145\163\042\076\137" + "\127\145\142\163\151\164\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042" + "\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\141\143\164\151\166\141\164\141\142\154\145\042\076\124\162\165" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\157\156\055\156\141\155\145\042\076\141\142\157\165\164\056\163" + "\150\157\167\055\165\162\154\055\160\162\157\160\145\162\164\171" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151\157" + "\156\055\164\141\162\147\145\164\042\076\042\167\145\142\163\151" + "\164\145\042\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164\157" + "\157\154\164\151\160\055\164\145\170\164\042\040\142\151\156\144" + "\055\163\157\165\162\143\145\075\042\101\144\167\101\142\157\165" + "\164\127\151\156\144\157\167\042\040\142\151\156\144\055\160\162" + "\157\160\145\162\164\171\075\042\167\145\142\163\151\164\145\042" + "\040\142\151\156\144\055\146\154\141\147\163\075\042\163\171\156" + "\143\055\143\162\145\141\164\145\042\057\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\111\155\141\147\145\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\151\143\157\156\055" + "\156\141\155\145\042\076\141\144\167\055\145\170\164\145\162\156" + "\141\154\055\154\151\156\153\055\163\171\155\142\157\154\151\143" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\143\145\163" + "\163\151\142\154\145\055\162\157\154\145\042\076\160\162\145\163" + "\145\156\164\141\164\151\157\156\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057" + "\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164" + "\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\116\141\166\151\147\141\164\151\157\156\120\141\147\145\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\164\151\164\154\145\042\040\164\162\141\156\163\154\141\164\141" + "\142\154\145\075\042\171\145\163\042\076\124\162\157\165\142\154" + "\145\163\150\157\157\164\151\156\147\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\164\141\147\042\076\164\162\157\165\142\154\145" + "\163\150\157\157\164\151\156\147\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\124\157\157\154" + "\142\141\162\126\151\145\167\042\076\074\143\150\151\154\144\040" + "\164\171\160\145\075\042\164\157\160\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\110\145\141" + "\144\145\162\102\141\162\042\057\076\074\057\143\150\151\154\144" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\157\156\164\145\156\164\042\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\164\153\123\143\162\157" + "\154\154\145\144\127\151\156\144\157\167\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\150\163\143\162" + "\157\154\154\142\141\162\055\160\157\154\151\143\171\042\076\156" + "\145\166\145\162\074\057\160\162\157\160\145\162\164\171\076\074" + "\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155" + "\145\075\042\163\165\142\160\141\147\145\042\057\076\074\057\163" + "\164\171\154\145\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\103\154" + "\141\155\160\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102\157" + "\170\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\157\162\151\145\156\164\141\164\151\157\156\042\076" + "\166\145\162\164\151\143\141\154\074\057\160\162\157\160\145\162" + "\164\171\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\164\153\114\141\142\145" + "\154\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\167\162\141\160\042\076\124\162\165\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\167\162\141\160\055\155\157\144" + "\145\042\076\167\157\162\144\055\143\150\141\162\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\170\141\154\151\147\156\042\076\060" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\154\141\142\145\154" + "\042\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042" + "\171\145\163\042\076\124\157\040\141\163\163\151\163\164\040\151" + "\156\040\164\162\157\165\142\154\145\163\150\157\157\164\151\156" + "\147\054\040\171\157\165\040\143\141\156\040\166\151\145\167\040" + "\171\157\165\162\040\144\145\142\165\147\147\151\156\147\040\151" + "\156\146\157\162\155\141\164\151\157\156\056\040\120\162\157\166" + "\151\144\151\156\147\040\164\150\151\163\040\151\156\146\157\162" + "\155\141\164\151\157\156\040\164\157\040\164\150\145\040\141\160" + "\160\154\151\143\141\164\151\157\156\040\144\145\166\145\154\157" + "\160\145\162\163\040\143\141\156\040\150\145\154\160\040\144\151" + "\141\147\156\157\163\145\040\141\156\171\040\160\162\157\142\154" + "\145\155\163\040\171\157\165\040\145\156\143\157\165\156\164\145" + "\162\040\167\150\145\156\040\171\157\165\040\162\145\160\157\162" + "\164\040\141\156\040\151\163\163\165\145\056\074\057\160\162\157" + "\160\145\162\164\171\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\141\143\164\151\166\141\164\145\055\154\151\156" + "\153\042\040\150\141\156\144\154\145\162\075\042\141\143\164\151" + "\166\141\164\145\137\154\151\156\153\137\143\142\042\040\163\167" + "\141\160\160\145\144\075\042\171\145\163\042\057\076\074\163\164" + "\171\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075" + "\042\142\157\144\171\042\057\076\074\057\163\164\171\154\145\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\101\144\167\120\162\145\146\145\162" + "\145\156\143\145\163\107\162\157\165\160\042\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\101\143\164\151\157\156\122\157\167\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\164\151\164\154\145\042\040\164\162\141\156\163\154\141\164\141" + "\142\154\145\075\042\171\145\163\042\076\137\104\145\142\165\147" + "\147\151\156\147\040\111\156\146\157\162\155\141\164\151\157\156" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\165\163\145\055\165" + "\156\144\145\162\154\151\156\145\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\141\143\164\151\166\141\164" + "\141\142\154\145\042\076\124\162\165\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\141\143\164\151\157\156\055\156\141\155\145" + "\042\076\156\141\166\151\147\141\164\151\157\156\056\160\165\163" + "\150\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\157\156\055\164\141\162\147\145\164\042\076\042\144\145\142\165" + "\147\151\156\146\157\042\074\057\160\162\157\160\145\162\164\171" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\111\155\141\147\145\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\151\143\157\156\055\156\141\155\145\042\076\147\157\055\156" + "\145\170\164\055\163\171\155\142\157\154\151\143\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\141\143\143\145\163\163\151\142\154" + "\145\055\162\157\154\145\042\076\160\162\145\163\145\156\164\141" + "\164\151\157\156\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057" + "\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164" + "\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\116\141\166\151" + "\147\141\164\151\157\156\120\141\147\145\042\040\151\144\075\042" + "\144\145\142\165\147\137\151\156\146\157\137\160\141\147\145\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\164\151\164\154\145\042\040\164\162\141\156\163\154\141\164" + "\141\142\154\145\075\042\171\145\163\042\076\104\145\142\165\147" + "\147\151\156\147\040\111\156\146\157\162\155\141\164\151\157\156" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\164\141\147\042\076" + "\144\145\142\165\147\151\156\146\157\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\124\157\157" + "\154\142\141\162\126\151\145\167\042\076\074\143\150\151\154\144" + "\040\164\171\160\145\075\042\164\157\160\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\110\145" + "\141\144\145\162\102\141\162\042\057\076\074\057\143\150\151\154" + "\144\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\157\156\164\145\156\164\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\107\164\153\123\143\162" + "\157\154\154\145\144\127\151\156\144\157\167\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\150\163\143" + "\162\157\154\154\142\141\162\055\160\157\154\151\143\171\042\076" + "\156\145\166\145\162\074\057\160\162\157\160\145\162\164\171\076" + "\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141" + "\155\145\075\042\163\165\142\160\141\147\145\042\057\076\074\057" + "\163\164\171\154\145\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\103" + "\154\141\155\160\123\143\162\157\154\154\141\142\154\145\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\124\145\170\164\126\151\145" + "\167\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\154\145\146\164\055\155\141\162\147\151\156\042\076" + "\061\062\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\162\151\147" + "\150\164\055\155\141\162\147\151\156\042\076\061\062\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\164\157\160\055\155\141\162\147" + "\151\156\042\076\061\070\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\142\157\164\164\157\155\055\155\141\162\147\151\156\042\076" + "\061\070\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\167\162\141" + "\160\055\155\157\144\145\042\076\167\157\162\144\055\143\150\141" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\145\144\151\164" + "\141\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\142\165\146\146\145\162\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\124\145\170\164\102\165\146\146\145\162\042\040\151\144\075\042" + "\144\145\142\165\147\137\151\156\146\157\137\142\165\146\146\145" + "\162\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\145\156\141\142\154\145\055\165\156\144\157\042\076" + "\106\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\164\145\170\164\042\040\142\151\156\144\055\163\157\165\162\143" + "\145\075\042\101\144\167\101\142\157\165\164\127\151\156\144\157" + "\167\042\040\142\151\156\144\055\160\162\157\160\145\162\164\171" + "\075\042\144\145\142\165\147\055\151\156\146\157\042\040\142\151" + "\156\144\055\146\154\141\147\163\075\042\163\171\156\143\055\143" + "\162\145\141\164\145\042\057\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\141\143\143" + "\145\163\163\151\142\151\154\151\164\171\076\074\162\145\154\141" + "\164\151\157\156\040\156\141\155\145\075\042\154\141\142\145\154" + "\154\145\144\055\142\171\042\076\144\145\142\165\147\137\151\156" + "\146\157\137\160\141\147\145\074\057\162\145\154\141\164\151\157" + "\156\076\074\057\141\143\143\145\163\163\151\142\151\154\151\164" + "\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074\143" + "\150\151\154\144\040\164\171\160\145\075\042\142\157\164\164\157" + "\155\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\101\143\164\151\157\156\102\141\162\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\162\145\166\145\141\154\145\144\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\102\165\164\164\157\156\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\164\151\157\156" + "\055\156\141\155\145\042\076\141\142\157\165\164\056\143\157\160" + "\171\055\160\162\157\160\145\162\164\171\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\141\143\164\151\157\156\055\164\141\162\147" + "\145\164\042\076\042\144\145\142\165\147\055\151\156\146\157\042" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\154\141\142\145\154" + "\042\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042" + "\171\145\163\042\076\137\103\157\160\171\040\124\145\170\164\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\165\163\145\055\165\156" + "\144\145\162\154\151\156\145\042\076\124\162\165\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\141\156\055\163\150\162\151" + "\156\153\042\076\124\162\165\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\143\150\151\154\144\040\164\171\160\145\075" + "\042\145\156\144\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\107\164\153\102\165\164\164\157\156\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\141\143\164\151\157\156\055\156\141\155\145\042\076\141\142\157" + "\165\164\056\163\141\166\145\055\144\145\142\165\147\055\151\156" + "\146\157\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\154\141\142" + "\145\154\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\137\123\141\166\145\040\101\163\342" + "\200\246\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\165\163\145" + "\055\165\156\144\145\162\154\151\156\145\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\141\156\055\163" + "\150\162\151\156\153\042\076\124\162\165\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\101\144\167\116\141\166\151\147\141\164\151\157\156" + "\120\141\147\145\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\164\151\164\154\145\042\040\164\162\141" + "\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042\076" + "\103\162\145\144\151\164\163\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\164\141\147\042\076\143\162\145\144\151\164\163\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\124\157\157\154\142\141\162\126\151\145\167\042\076\074" + "\143\150\151\154\144\040\164\171\160\145\075\042\164\157\160\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\101\144\167\110\145\141\144\145\162\102\141\162\042\057\076\074" + "\057\143\150\151\154\144\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\157\156\164\145\156\164\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\123\143\162\157\154\154\145\144\127\151\156\144\157\167" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\150\163\143\162\157\154\154\142\141\162\055\160\157\154" + "\151\143\171\042\076\156\145\166\145\162\074\057\160\162\157\160" + "\145\162\164\171\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\163\165\142\160\141\147\145" + "\042\057\076\074\057\163\164\171\154\145\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\103\154\141\155\160\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\102\157\170\042\040\151\144\075\042\143\162\145" + "\144\151\164\163\137\142\157\170\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\157\162\151\145\156\164" + "\141\164\151\157\156\042\076\166\145\162\164\151\143\141\154\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\166\151\163\151\142\154" + "\145\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\116\141\166" + "\151\147\141\164\151\157\156\120\141\147\145\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164" + "\154\145\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\114\145\147\141\154\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\164\141\147\042\076\154\145\147\141" + "\154\074\057\160\162\157\160\145\162\164\171\076\074\163\151\147" + "\156\141\154\040\156\141\155\145\075\042\163\150\157\167\151\156" + "\147\042\040\150\141\156\144\154\145\162\075\042\154\145\147\141" + "\154\137\163\150\157\167\151\156\147\137\143\142\042\040\163\167" + "\141\160\160\145\144\075\042\171\145\163\042\057\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151" + "\154\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\101\144\167\124\157\157\154\142\141\162\126\151\145" + "\167\042\076\074\143\150\151\154\144\040\164\171\160\145\075\042" + "\164\157\160\042\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\101\144\167\110\145\141\144\145\162\102\141\162" + "\042\057\076\074\057\143\150\151\154\144\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\157\156\164\145" + "\156\164\042\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\123\143\162\157\154\154\145\144\127\151" + "\156\144\157\167\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\150\163\143\162\157\154\154\142\141\162" + "\055\160\157\154\151\143\171\042\076\156\145\166\145\162\074\057" + "\160\162\157\160\145\162\164\171\076\074\163\164\171\154\145\076" + "\074\143\154\141\163\163\040\156\141\155\145\075\042\163\165\142" + "\160\141\147\145\042\057\076\074\057\163\164\171\154\145\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143" + "\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\101\144\167\103\154\141\155\160\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143" + "\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\107\164\153\102\157\170\042\040\151\144\075" + "\042\154\145\147\141\154\137\142\157\170\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\157\162\151\145" + "\156\164\141\164\151\157\156\042\076\166\145\162\164\151\143\141" + "\154\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143" + "\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\116" + "\141\166\151\147\141\164\151\157\156\120\141\147\145\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164" + "\151\164\154\145\042\040\164\162\141\156\163\154\141\164\141\142" + "\154\145\075\042\171\145\163\042\076\101\143\153\156\157\167\154" + "\145\144\147\145\155\145\156\164\163\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\164\141\147\042\076\141\143\153\156\157\167\154" + "\145\144\147\145\155\145\156\164\163\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\124\157\157" + "\154\142\141\162\126\151\145\167\042\076\074\143\150\151\154\144" + "\040\164\171\160\145\075\042\164\157\160\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\110\145" + "\141\144\145\162\102\141\162\042\057\076\074\057\143\150\151\154" + "\144\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\157\156\164\145\156\164\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\107\164\153\123\143\162" + "\157\154\154\145\144\127\151\156\144\157\167\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\150\163\143" + "\162\157\154\154\142\141\162\055\160\157\154\151\143\171\042\076" + "\156\145\166\145\162\074\057\160\162\157\160\145\162\164\171\076" + "\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141" + "\155\145\075\042\163\165\142\160\141\147\145\042\057\076\074\057" + "\163\164\171\154\145\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167\103" + "\154\141\155\160\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102" + "\157\170\042\040\151\144\075\042\141\143\153\156\157\167\154\145" + "\144\147\145\155\145\156\164\163\137\142\157\170\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\157\162" + "\151\145\156\164\141\164\151\157\156\042\076\166\145\162\164\151" + "\143\141\154\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151" + "\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076" + "\074\057\164\145\155\160\154\141\164\145\076\074\057\151\156\164" + "\145\162\146\141\143\145\076\012\000\000\050\165\165\141\171\051" + "\141\144\167\055\164\141\142\055\157\166\145\162\166\151\145\167" + "\056\165\151\000\000\000\000\000\303\022\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\124\141\142" + "\117\166\145\162\166\151\145\167\042\040\160\141\162\145\156\164" + "\075\042\107\164\153\127\151\144\147\145\164\042\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\101\144\167\102\151\156\042\040\151\144\075\042\143" + "\150\151\154\144\137\142\151\156\042\057\076\074\057\143\150\151" + "\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\124\157\157\154" + "\142\141\162\126\151\145\167\042\040\151\144\075\042\157\166\145" + "\162\166\151\145\167\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\141\156\055\146\157\143\165\163" + "\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\141\156\055\164\141\162\147\145\164\042\076\106\141" + "\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074\163" + "\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155\145" + "\075\042\142\141\143\153\147\162\157\165\156\144\042\057\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\157\166\145\162" + "\166\151\145\167\042\057\076\074\057\163\164\171\154\145\076\074" + "\143\150\151\154\144\040\164\171\160\145\075\042\164\157\160\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\101\144\167\110\145\141\144\145\162\102\141\162\042\040\151\144" + "\075\042\150\145\141\144\145\162\137\142\141\162\042\076\074\143" + "\150\151\154\144\040\164\171\160\145\075\042\163\164\141\162\164" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\124\157\147\147\154\145\102\165\164\164\157\156" + "\042\040\151\144\075\042\163\145\141\162\143\150\137\142\165\164" + "\164\157\156\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\151\143\157\156\055\156\141\155\145\042\076" + "\145\144\151\164\055\146\151\156\144\055\163\171\155\142\157\154" + "\151\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\157\157" + "\154\164\151\160\055\164\145\170\164\042\040\164\162\141\156\163" + "\154\141\164\141\142\154\145\075\042\171\145\163\042\076\123\145" + "\141\162\143\150\040\124\141\142\163\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\164\151\164\154\145\055\167\151\144\147\145" + "\164\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\127\151\156\144\157\167\124\151\164\154\145" + "\042\040\151\144\075\042\164\151\164\154\145\042\076\074\163\164" + "\171\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075" + "\042\156\165\155\145\162\151\143\042\057\076\074\057\163\164\171" + "\154\145\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\143\150\151\154\144\040\164\171" + "\160\145\075\042\145\156\144\042\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\115\145\156\165\102" + "\165\164\164\157\156\042\040\151\144\075\042\163\145\143\157\156" + "\144\141\162\171\137\155\145\156\165\137\142\165\164\164\157\156" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\151\143\157\156\055" + "\156\141\155\145\042\076\166\151\145\167\055\155\157\162\145\055" + "\163\171\155\142\157\154\151\143\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\160\162\151\155\141\162\171\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150" + "\151\154\144\040\164\171\160\145\075\042\164\157\160\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\123\145\141\162\143\150\102\141\162\042\040\151\144\075\042" + "\163\145\141\162\143\150\137\142\141\162\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\163\145\141\162" + "\143\150\055\155\157\144\145\055\145\156\141\142\154\145\144\042" + "\040\142\151\156\144\055\163\157\165\162\143\145\075\042\163\145" + "\141\162\143\150\137\142\165\164\164\157\156\042\040\142\151\156" + "\144\055\160\162\157\160\145\162\164\171\075\042\141\143\164\151" + "\166\145\042\040\142\151\156\144\055\146\154\141\147\163\075\042" + "\142\151\144\151\162\145\143\164\151\157\156\141\154\042\057\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\153\145\171\055\143\141\160\164\165\162\145\055\167\151\144\147" + "\145\164\042\076\157\166\145\162\166\151\145\167\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\103\154\141\155\160\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\150\145\170\160\141\156\144\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\155" + "\141\170\151\155\165\155\055\163\151\172\145\042\076\064\060\060" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\123\145\141\162\143\150\105\156\164\162\171\042" + "\040\151\144\075\042\163\145\141\162\143\150\137\145\156\164\162" + "\171\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\150\145\170\160\141\156\144\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\160\154\141\143\145" + "\150\157\154\144\145\162\055\164\145\170\164\042\040\164\162\141" + "\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042\076" + "\123\145\141\162\143\150\040\164\141\142\163\074\057\160\162\157" + "\160\145\162\164\171\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\163\145\141\162\143\150\055\143\150\141\156\147" + "\145\144\042\040\150\141\156\144\154\145\162\075\042\163\145\141" + "\162\143\150\137\143\150\141\156\147\145\144\137\143\142\042\040" + "\163\167\141\160\160\145\144\075\042\171\145\163\042\057\076\074" + "\163\151\147\156\141\154\040\156\141\155\145\075\042\163\164\157" + "\160\055\163\145\141\162\143\150\042\040\150\141\156\144\154\145" + "\162\075\042\163\164\157\160\137\163\145\141\162\143\150\137\143" + "\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042" + "\057\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\157\156\164\145" + "\156\164\042\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\117\166\145\162\154\141\171\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166" + "\145\170\160\141\156\144\042\076\124\162\165\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\123\143\162\157\154\154\145\144\127\151\156\144\157\167\042\040" + "\151\144\075\042\163\143\162\157\154\154\145\144\137\167\151\156" + "\144\157\167\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\150\163\143\162\157\154\154\142\141\162\055" + "\160\157\154\151\143\171\042\076\156\145\166\145\162\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\124\141\142\117\166\145\162\166\151\145\167\123\143\162\157" + "\154\154\141\142\154\145\042\040\151\144\075\042\163\143\162\157" + "\154\154\141\142\154\145\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\157\166\145\162\166\151\145\167" + "\042\076\157\166\145\162\166\151\145\167\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\156\145\167\055\142\165\164\164\157\156\042" + "\076\156\145\167\137\164\141\142\137\142\165\164\164\157\156\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\160\151\156\156\145\144" + "\055\147\162\151\144\042\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\101\144\167\124\141\142\107\162\151\144" + "\042\040\151\144\075\042\160\151\156\156\145\144\137\147\162\151" + "\144\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\160\151\156\156\145\144\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\164\141\142\055\157\166" + "\145\162\166\151\145\167\042\076\101\144\167\124\141\142\117\166" + "\145\162\166\151\145\167\074\057\160\162\157\160\145\162\164\171" + "\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042\145" + "\170\164\162\141\055\144\162\141\147\055\144\162\157\160\042\040" + "\150\141\156\144\154\145\162\075\042\145\170\164\162\141\137\144" + "\162\141\147\137\144\162\157\160\137\143\142\042\040\163\167\141" + "\160\160\145\144\075\042\171\145\163\042\057\076\074\163\151\147" + "\156\141\154\040\156\141\155\145\075\042\145\170\164\162\141\055" + "\144\162\141\147\055\166\141\154\165\145\042\040\150\141\156\144" + "\154\145\162\075\042\145\170\164\162\141\137\144\162\141\147\137" + "\166\141\154\165\145\137\143\142\042\040\163\167\141\160\160\145" + "\144\075\042\164\162\165\145\042\057\076\074\163\151\147\156\141" + "\154\040\156\141\155\145\075\042\156\157\164\151\146\171\072\072" + "\145\155\160\164\171\042\040\150\141\156\144\154\145\162\075\042" + "\145\155\160\164\171\137\143\150\141\156\147\145\144\137\143\142" + "\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042\057" + "\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\147\162\151\144\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\124\141\142" + "\107\162\151\144\042\040\151\144\075\042\147\162\151\144\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\164\141\142\055\157\166\145\162\166\151\145\167\042\076\101\144" + "\167\124\141\142\117\166\145\162\166\151\145\167\074\057\160\162" + "\157\160\145\162\164\171\076\074\163\151\147\156\141\154\040\156" + "\141\155\145\075\042\145\170\164\162\141\055\144\162\141\147\055" + "\144\162\157\160\042\040\150\141\156\144\154\145\162\075\042\145" + "\170\164\162\141\137\144\162\141\147\137\144\162\157\160\137\143" + "\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042" + "\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\145\170\164\162\141\055\144\162\141\147\055\166\141\154\165\145" + "\042\040\150\141\156\144\154\145\162\075\042\145\170\164\162\141" + "\137\144\162\141\147\137\166\141\154\165\145\137\143\142\042\040" + "\163\167\141\160\160\145\144\075\042\164\162\165\145\042\057\076" + "\074\163\151\147\156\141\154\040\156\141\155\145\075\042\156\157" + "\164\151\146\171\072\072\145\155\160\164\171\042\040\150\141\156" + "\144\154\145\162\075\042\145\155\160\164\171\137\143\150\141\156" + "\147\145\144\137\143\142\042\040\163\167\141\160\160\145\144\075" + "\042\171\145\163\042\057\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\143\150\151\154\144\040\164\171\160\145\075\042" + "\157\166\145\162\154\141\171\042\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\101\144\167\123\164\141\164\165" + "\163\120\141\147\145\042\040\151\144\075\042\145\155\160\164\171" + "\137\163\164\141\164\145\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\166\151\163\151\142\154\145\042" + "\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\141\156\055\164\141\162\147\145\164\042\076\106\141\154" + "\163\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\141\156" + "\055\146\157\143\165\163\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\151\143\157\156\055\156\141\155" + "\145\042\076\166\151\145\167\055\147\162\151\144\055\163\171\155" + "\142\157\154\151\143\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\164\151\164\154\145\042\040\164\162\141\156\163\154\141\164\141" + "\142\154\145\075\042\171\145\163\042\076\116\157\040\117\160\145" + "\156\040\124\141\142\163\074\057\160\162\157\160\145\162\164\171" + "\076\074\154\141\171\157\165\164\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\155\145\141\163\165\162\145" + "\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\154\151\160\055\157\166\145\162\154\141\171\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\057" + "\154\141\171\157\165\164\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\143\150\151\154\144\040\164" + "\171\160\145\075\042\157\166\145\162\154\141\171\042\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\123\164\141\164\165\163\120\141\147\145\042\040\151\144\075\042" + "\163\145\141\162\143\150\137\145\155\160\164\171\137\163\164\141" + "\164\145\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\166\151\163\151\142\154\145\042\076\106\141\154" + "\163\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\141\156" + "\055\164\141\162\147\145\164\042\076\106\141\154\163\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\143\141\156\055\146\157\143" + "\165\163\042\076\106\141\154\163\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\151\143\157\156\055\156\141\155\145\042\076\145" + "\144\151\164\055\146\151\156\144\055\163\171\155\142\157\154\151" + "\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\164\151\164\154" + "\145\042\040\164\162\141\156\163\154\141\164\141\142\154\145\075" + "\042\171\145\163\042\076\116\157\040\124\141\142\163\040\106\157" + "\165\156\144\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\144\145" + "\163\143\162\151\160\164\151\157\156\042\040\164\162\141\156\163" + "\154\141\164\141\142\154\145\075\042\171\145\163\042\076\124\162" + "\171\040\141\040\144\151\146\146\145\162\145\156\164\040\163\145" + "\141\162\143\150\056\074\057\160\162\157\160\145\162\164\171\076" + "\074\154\141\171\157\165\164\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\155\145\141\163\165\162\145\042" + "\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\143\154\151\160\055\157\166\145\162\154\141\171\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\057\154" + "\141\171\157\165\164\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\143\150\151\154\144\040\164\171" + "\160\145\075\042\157\166\145\162\154\141\171\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102" + "\165\164\164\157\156\042\040\151\144\075\042\156\145\167\137\164" + "\141\142\137\142\165\164\164\157\156\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151\142" + "\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\150\141\154\151\147\156\042\076\143\145\156\164" + "\145\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\166\141\154" + "\151\147\156\042\076\145\156\144\074\057\160\162\157\160\145\162" + "\164\171\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\143\154\151\143\153\145\144\042\040\150\141\156\144\154\145" + "\162\075\042\156\145\167\137\164\141\142\137\143\154\151\143\153" + "\145\144\137\143\142\042\040\163\167\141\160\160\145\144\075\042" + "\171\145\163\042\057\076\074\154\141\171\157\165\164\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\155\145" + "\141\163\165\162\145\042\076\124\162\165\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\154\151\160\055\157\166\145\162\154" + "\141\171\042\076\124\162\165\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\154\141\171\157\165\164\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154" + "\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\102\165\164\164\157\156\103\157\156\164\145" + "\156\164\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\151\143\157\156\055\156\141\155\145\042\076\164" + "\141\142\055\156\145\167\055\163\171\155\142\157\154\151\143\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\154\141\142\145\154\042" + "\040\164\162\141\156\163\154\141\164\141\142\154\145\075\042\171" + "\145\163\042\076\116\145\167\040\137\124\141\142\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\165\163\145\055\165\156\144\145\162" + "\154\151\156\145\042\076\124\162\165\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\141\156\055\163\150\162\151\156\153\042" + "\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145" + "\162\164\171\076\074\163\164\171\154\145\076\074\143\154\141\163" + "\163\040\156\141\155\145\075\042\160\151\154\154\042\057\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\042\057\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\156\145\167\055" + "\164\141\142\055\142\165\164\164\157\156\042\057\076\074\057\163" + "\164\171\154\145\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\057\164\145\155" + "\160\154\141\164\145\076\074\057\151\156\164\145\162\146\141\143" + "\145\076\012\000\000\050\165\165\141\171\051\141\144\167\055\145" + "\156\164\162\171\055\162\157\167\056\165\151\000\000\000\000\000" + "\137\020\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\105\156\164\162\171\122\157\167\042\040\160" + "\141\162\145\156\164\075\042\101\144\167\120\162\145\146\145\162" + "\145\156\143\145\163\122\157\167\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\164\151\166\141" + "\164\141\142\154\145\042\076\124\162\165\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\107" + "\145\163\164\165\162\145\103\154\151\143\153\042\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\160\162\145\163\163" + "\145\144\042\040\150\141\156\144\154\145\162\075\042\160\162\145" + "\163\163\145\144\137\143\142\042\057\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\102\157\170\042\040\151\144\075\042\150\145\141" + "\144\145\162\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\166\141\154\151\147\156\042\076\143\145\156" + "\164\145\162\074\057\160\162\157\160\145\162\164\171\076\074\163" + "\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155\145" + "\075\042\150\145\141\144\145\162\042\057\076\074\057\163\164\171" + "\154\145\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\164\153\102\157\170\042" + "\040\151\144\075\042\160\162\145\146\151\170\145\163\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166" + "\151\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\163\164\171\154\145\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\160\162\145\146" + "\151\170\145\163\042\057\076\074\057\163\164\171\154\145\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\101\144\167\107\151\172\155\157\042\040" + "\151\144\075\042\145\144\151\164\141\142\154\145\137\141\162\145" + "\141\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\150\145\170\160\141\156\144\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\157\166\145\162\146" + "\154\157\167\042\076\150\151\144\144\145\156\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\114" + "\141\142\145\154\042\040\151\144\075\042\145\155\160\164\171\137" + "\164\151\164\154\145\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\145\154\154\151\160\163\151\172\145" + "\042\076\145\156\144\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\150\141\154\151\147\156\042\076\163\164\141\162\164\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\154\151\156\145\163\042\076\060" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\170\141\154\151\147" + "\156\042\076\060\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\154" + "\141\142\145\154\042\040\142\151\156\144\055\163\157\165\162\143" + "\145\075\042\101\144\167\105\156\164\162\171\122\157\167\042\040" + "\142\151\156\144\055\160\162\157\160\145\162\164\171\075\042\164" + "\151\164\154\145\042\040\142\151\156\144\055\146\154\141\147\163" + "\075\042\163\171\156\143\055\143\162\145\141\164\145\042\057\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\155\156\145\155\157\156\151\143\055\167\151\144\147\145\164\042" + "\076\101\144\167\105\156\164\162\171\122\157\167\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\165\163\145\055\155\141\162\153\165" + "\160\042\040\142\151\156\144\055\163\157\165\162\143\145\075\042" + "\101\144\167\105\156\164\162\171\122\157\167\042\040\142\151\156" + "\144\055\160\162\157\160\145\162\164\171\075\042\165\163\145\055" + "\155\141\162\153\165\160\042\040\142\151\156\144\055\146\154\141" + "\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145\042" + "\057\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042" + "\040\142\151\156\144\055\163\157\165\162\143\145\075\042\101\144" + "\167\105\156\164\162\171\122\157\167\042\040\142\151\156\144\055" + "\160\162\157\160\145\162\164\171\075\042\165\163\145\055\165\156" + "\144\145\162\154\151\156\145\042\040\142\151\156\144\055\146\154" + "\141\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145" + "\042\057\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\143\141\156\055\164\141\162\147\145\164\042\076\106" + "\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155" + "\145\075\042\164\151\164\154\145\042\057\076\074\143\154\141\163" + "\163\040\156\141\155\145\075\042\144\151\155\055\154\141\142\145" + "\154\042\057\076\074\057\163\164\171\154\145\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\114\141\142\145\154\042\040\151\144\075" + "\042\164\151\164\154\145\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\145\154\154\151\160\163\151\172" + "\145\042\076\145\156\144\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\150\141\154\151\147\156\042\076\163\164\141\162\164\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\170\141\154\151\147\156\042" + "\076\060\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\157\160\141" + "\143\151\164\171\042\076\060\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\154\141\142\145\154\042\040\142\151\156\144\055\163\157" + "\165\162\143\145\075\042\101\144\167\105\156\164\162\171\122\157" + "\167\042\040\142\151\156\144\055\160\162\157\160\145\162\164\171" + "\075\042\164\151\164\154\145\042\040\142\151\156\144\055\146\154" + "\141\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145" + "\042\057\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\155\156\145\155\157\156\151\143\055\167\151\144\147" + "\145\164\042\076\101\144\167\105\156\164\162\171\122\157\167\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\165\163\145\055\155\141" + "\162\153\165\160\042\040\142\151\156\144\055\163\157\165\162\143" + "\145\075\042\101\144\167\105\156\164\162\171\122\157\167\042\040" + "\142\151\156\144\055\160\162\157\160\145\162\164\171\075\042\165" + "\163\145\055\155\141\162\153\165\160\042\040\142\151\156\144\055" + "\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145\141" + "\164\145\042\057\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\165\163\145\055\165\156\144\145\162\154\151" + "\156\145\042\040\142\151\156\144\055\163\157\165\162\143\145\075" + "\042\101\144\167\105\156\164\162\171\122\157\167\042\040\142\151" + "\156\144\055\160\162\157\160\145\162\164\171\075\042\165\163\145" + "\055\165\156\144\145\162\154\151\156\145\042\040\142\151\156\144" + "\055\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145" + "\141\164\145\042\057\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\141\156\055\164\141\162\147\145\164" + "\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\163\165\142\164\151\164\154\145\042\057" + "\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\124\145\170\164\042\040\151\144\075\042\164\145\170" + "\164\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\145\156\141\142\154\145\055\165\156\144\157\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150" + "\145\170\160\141\156\144\042\076\124\162\165\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\166\145\170\160\141\156\144\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\155" + "\141\170\055\154\145\156\147\164\150\042\076\060\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\157\160\141\143\151\164\171\042\076" + "\060\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\141\154\151" + "\147\156\042\076\142\141\163\145\154\151\156\145\055\146\151\154" + "\154\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\143\145" + "\163\163\151\142\154\145\055\162\157\154\145\042\076\164\145\170" + "\164\055\142\157\170\074\057\160\162\157\160\145\162\164\171\076" + "\074\141\143\143\145\163\163\151\142\151\154\151\164\171\076\074" + "\162\145\154\141\164\151\157\156\040\156\141\155\145\075\042\154" + "\141\142\145\154\154\145\144\055\142\171\042\076\164\151\164\154" + "\145\074\057\162\145\154\141\164\151\157\156\076\074\057\141\143" + "\143\145\163\163\151\142\151\154\151\164\171\076\074\163\151\147" + "\156\141\154\040\156\141\155\145\075\042\141\143\164\151\166\141" + "\164\145\042\040\150\141\156\144\154\145\162\075\042\164\145\170" + "\164\137\141\143\164\151\166\141\164\145\144\137\143\142\042\040" + "\163\167\141\160\160\145\144\075\042\171\145\163\042\057\076\074" + "\163\151\147\156\141\154\040\156\141\155\145\075\042\163\164\141" + "\164\145\055\146\154\141\147\163\055\143\150\141\156\147\145\144" + "\042\040\150\141\156\144\154\145\162\075\042\164\145\170\164\137" + "\163\164\141\164\145\137\146\154\141\147\163\137\143\150\141\156" + "\147\145\144\137\143\142\042\040\163\167\141\160\160\145\144\075" + "\042\171\145\163\042\057\076\074\163\151\147\156\141\154\040\156" + "\141\155\145\075\042\153\145\171\156\141\166\055\146\141\151\154" + "\145\144\042\040\150\141\156\144\154\145\162\075\042\164\145\170" + "\164\137\153\145\171\156\141\166\137\146\141\151\154\145\144\137" + "\143\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\143\150\141\156\147\145\144\042\040\150\141\156\144\154\145" + "\162\075\042\164\145\170\164\137\143\150\141\156\147\145\144\137" + "\143\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\156\157\164\151\146\171\072\072\145\144\151\164\141\142\154" + "\145\042\040\150\141\156\144\154\145\162\075\042\165\160\144\141" + "\164\145\137\145\155\160\164\171\042\040\163\167\141\160\160\145" + "\144\075\042\171\145\163\042\057\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\111\155\141\147\145\042\040\151\144\075\042\151" + "\156\144\151\143\141\164\157\162\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\166\151\163\151\142\154" + "\145\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\166\141\154\151\147\156\042\076\143\145\156\164\145" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\163\164\171" + "\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042" + "\151\156\144\151\143\141\164\157\162\042\057\076\074\057\163\164" + "\171\154\145\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102\165" + "\164\164\157\156\042\040\151\144\075\042\141\160\160\154\171\137" + "\142\165\164\164\157\156\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\166\151\163\151\142\154\145\042" + "\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\141\154\151\147\156\042\076\143\145\156\164\145\162\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\151\143\157\156\055\156" + "\141\155\145\042\076\141\144\167\055\145\156\164\162\171\055\141" + "\160\160\154\171\055\163\171\155\142\157\154\151\143\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\164\157\157\154\164\151\160\055" + "\164\145\170\164\042\040\164\162\141\156\163\154\141\164\141\142" + "\154\145\075\042\171\145\163\042\076\101\160\160\154\171\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\146\157\143\165\163\055\157" + "\156\055\143\154\151\143\153\042\076\106\141\154\163\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\163\151\147\156\141\154" + "\040\156\141\155\145\075\042\143\154\151\143\153\145\144\042\040" + "\150\141\156\144\154\145\162\075\042\141\160\160\154\171\137\142" + "\165\164\164\157\156\137\143\154\151\143\153\145\144\137\143\142" + "\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042\057" + "\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156" + "\141\155\145\075\042\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\042\057\076\074\143\154\141\163\163\040\156" + "\141\155\145\075\042\143\151\162\143\165\154\141\162\042\057\076" + "\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\111\155\141\147\145\042\040\151\144\075\042\145\144\151" + "\164\137\151\143\157\156\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\166\141\154\151\147\156\042\076" + "\143\145\156\164\145\162\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\141\156\055\164\141\162\147\145\164\042\076\106\141\154" + "\163\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\151\143\157" + "\156\055\156\141\155\145\042\076\144\157\143\165\155\145\156\164" + "\055\145\144\151\164\055\163\171\155\142\157\154\151\143\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\141\143\143\145\163\163\151" + "\142\154\145\055\162\157\154\145\042\076\160\162\145\163\145\156" + "\164\141\164\151\157\156\074\057\160\162\157\160\145\162\164\171" + "\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156" + "\141\155\145\075\042\145\144\151\164\055\151\143\157\156\042\057" + "\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\102\157\170\042\040\151\144\075\042\163\165\146\146" + "\151\170\145\163\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\166\151\163\151\142\154\145\042\076\106" + "\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155" + "\145\075\042\163\165\146\146\151\170\145\163\042\057\076\074\057" + "\163\164\171\154\145\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\163\164\171\154" + "\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042\145" + "\156\164\162\171\042\057\076\074\057\163\164\171\154\145\076\074" + "\057\164\145\155\160\154\141\164\145\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\123\151\147\156\141\154" + "\107\162\157\165\160\042\040\151\144\075\042\142\165\146\146\145" + "\162\137\163\151\147\156\141\154\163\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\164\141\162\147\145" + "\164\055\164\171\160\145\042\076\107\164\153\105\156\164\162\171" + "\102\165\146\146\145\162\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\151\156\164\145" + "\162\146\141\143\145\076\012\000\000\050\165\165\141\171\051\141" + "\144\167\055\164\141\142\055\164\150\165\155\142\156\141\151\154" + "\056\165\151\000\000\000\000\000\013\020\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\124\141\142" + "\124\150\165\155\142\156\141\151\154\042\040\160\141\162\145\156" + "\164\075\042\107\164\153\127\151\144\147\145\164\042\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\104\162\157\160\124\141\162\147\145" + "\164\042\040\151\144\075\042\144\162\157\160\137\164\141\162\147" + "\145\164\042\076\074\163\151\147\156\141\154\040\156\141\155\145" + "\075\042\144\162\157\160\042\040\150\141\156\144\154\145\162\075" + "\042\144\162\157\160\137\143\142\042\040\163\167\141\160\160\145" + "\144\075\042\164\162\165\145\042\057\076\074\163\151\147\156\141" + "\154\040\156\141\155\145\075\042\145\156\164\145\162\042\040\150" + "\141\156\144\154\145\162\075\042\145\170\164\162\141\137\144\162" + "\141\147\137\145\156\164\145\162\137\143\142\042\040\163\167\141" + "\160\160\145\144\075\042\164\162\165\145\042\057\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\155\157\164\151\157" + "\156\042\040\150\141\156\144\154\145\162\075\042\145\170\164\162" + "\141\137\144\162\141\147\137\155\157\164\151\157\156\137\143\142" + "\042\040\163\167\141\160\160\145\144\075\042\164\162\165\145\042" + "\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\156\157\164\151\146\171\072\072\166\141\154\165\145\042\040\150" + "\141\156\144\154\145\162\075\042\145\170\164\162\141\137\144\162" + "\141\147\137\156\157\164\151\146\171\137\166\141\154\165\145\137" + "\143\142\042\040\163\167\141\160\160\145\144\075\042\164\162\165" + "\145\042\057\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102\157" + "\170\042\040\151\144\075\042\143\157\156\164\145\156\164\163\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\157\162\151\145\156\164\141\164\151\157\156\042\076\166\145" + "\162\164\151\143\141\154\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\163\160\141\143\151\156\147\042\076\066\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\166\145\170\160\141\156\144\042\076\106" + "\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\107\164\153\117\166\145\162\154\141\171\042" + "\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156" + "\141\155\145\075\042\164\150\165\155\142\156\141\151\154\042\057" + "\076\074\057\163\164\171\154\145\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\117\166\145\162\154\141\171\042\040\151\144\075\042\157" + "\166\145\162\154\141\171\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\157\166\145\162\146\154\157\167" + "\042\076\150\151\144\144\145\156\074\057\160\162\157\160\145\162" + "\164\171\076\074\163\164\171\154\145\076\074\143\154\141\163\163" + "\040\156\141\155\145\075\042\143\141\162\144\042\057\076\074\057" + "\163\164\171\154\145\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\120" + "\151\143\164\165\162\145\042\040\151\144\075\042\160\151\143\164" + "\165\162\145\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\141\156\055\163\150\162\151\156\153\042" + "\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\153\145\145\160\055\141\163\160\145\143\164\055\162\141\164\151" + "\157\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\166\145\170\160\141\156\144\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076\074" + "\143\150\151\154\144\040\164\171\160\145\075\042\157\166\145\162" + "\154\141\171\042\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\102\165\164\164\157\156\042\040\151" + "\144\075\042\143\154\157\163\145\137\142\164\156\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143\141" + "\156\055\146\157\143\165\163\042\076\106\141\154\163\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\164\157\157\154\164\151\160" + "\055\164\145\170\164\042\040\164\162\141\156\163\154\141\164\141" + "\142\154\145\075\042\171\145\163\042\076\103\154\157\163\145\040" + "\124\141\142\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\151\143" + "\157\156\055\156\141\155\145\042\076\167\151\156\144\157\167\055" + "\143\154\157\163\145\055\163\171\155\142\157\154\151\143\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\166\141\154\151\147\156\042" + "\076\163\164\141\162\164\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\150\141\154\151\147\156\042\076\145\156\144\074\057\160\162" + "\157\160\145\162\164\171\076\074\163\151\147\156\141\154\040\156" + "\141\155\145\075\042\143\154\151\143\153\145\144\042\040\150\141" + "\156\144\154\145\162\075\042\143\154\157\163\145\137\143\154\151" + "\143\153\145\144\137\143\142\042\040\163\167\141\160\160\145\144" + "\075\042\164\162\165\145\042\057\076\074\154\141\171\157\165\164" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\155\145\141\163\165\162\145\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\057\154\141\171\157\165" + "\164\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\143\151\162\143\165\154\141\162\042\057" + "\076\074\143\154\141\163\163\040\156\141\155\145\075\042\164\141" + "\142\055\143\154\157\163\145\055\142\165\164\164\157\156\042\057" + "\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144" + "\040\164\171\160\145\075\042\157\166\145\162\154\141\171\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\111\155\141\147\145\042\040\151\144\075\042\165\156\160" + "\151\156\137\151\143\157\156\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\151\143\157\156\055\156\141" + "\155\145\042\076\141\144\167\055\164\141\142\055\165\156\160\151" + "\156\055\163\171\155\142\157\154\151\143\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\166\141\154\151\147\156\042\076\163\164\141" + "\162\164\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\150\141\154" + "\151\147\156\042\076\145\156\144\074\057\160\162\157\160\145\162" + "\164\171\076\074\154\141\171\157\165\164\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\155\145\141\163\165" + "\162\145\042\076\124\162\165\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\154\141\171\157\165\164\076\074\163\164\171" + "\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042" + "\164\141\142\055\165\156\160\151\156\055\151\143\157\156\042\057" + "\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144" + "\040\164\171\160\145\075\042\157\166\145\162\154\141\171\042\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\102\165\164\164\157\156\042\040\151\144\075\042\151\156" + "\144\151\143\141\164\157\162\137\142\164\156\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\141\156" + "\055\146\157\143\165\163\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\166\141\154\151\147\156\042\076" + "\163\164\141\162\164\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\150\141\154\151\147\156\042\076\163\164\141\162\164\074\057\160" + "\162\157\160\145\162\164\171\076\074\142\151\156\144\151\156\147" + "\040\156\141\155\145\075\042\164\157\157\154\164\151\160\055\155" + "\141\162\153\165\160\042\076\074\154\157\157\153\165\160\040\156" + "\141\155\145\075\042\151\156\144\151\143\141\164\157\162\055\164" + "\157\157\154\164\151\160\042\040\164\171\160\145\075\042\101\144" + "\167\124\141\142\120\141\147\145\042\076\074\154\157\157\153\165" + "\160\040\156\141\155\145\075\042\160\141\147\145\042\076\101\144" + "\167\124\141\142\124\150\165\155\142\156\141\151\154\074\057\154" + "\157\157\153\165\160\076\074\057\154\157\157\153\165\160\076\074" + "\057\142\151\156\144\151\156\147\076\074\163\151\147\156\141\154" + "\040\156\141\155\145\075\042\143\154\151\143\153\145\144\042\040" + "\150\141\156\144\154\145\162\075\042\151\156\144\151\143\141\164" + "\157\162\137\143\154\151\143\153\145\144\137\143\142\042\040\163" + "\167\141\160\160\145\144\075\042\164\162\165\145\042\057\076\074" + "\154\141\171\157\165\164\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\155\145\141\163\165\162\145\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\154\141\171\157\165\164\076\074\163\164\171\154\145\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\143\151\162\143" + "\165\154\141\162\042\057\076\074\143\154\141\163\163\040\156\141" + "\155\145\075\042\164\141\142\055\151\156\144\151\143\141\164\157" + "\162\042\057\076\074\143\154\141\163\163\040\156\141\155\145\075" + "\042\151\155\141\147\145\055\142\165\164\164\157\156\042\057\076" + "\074\057\163\164\171\154\145\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\111\155\141\147\145\042\040\151\144\075\042\151\156\144\151" + "\143\141\164\157\162\137\151\143\157\156\042\057\076\074\057\160" + "\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143" + "\164\076\074\057\160\162\157\160\145\162\164\171\076\074\143\150" + "\151\154\144\040\164\171\160\145\075\042\157\166\145\162\154\141" + "\171\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\122\145\166\145\141\154\145\162\042\040\151" + "\144\075\042\156\145\145\144\163\137\141\164\164\145\156\164\151" + "\157\156\137\162\145\166\145\141\154\145\162\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\150\141\154" + "\151\147\156\042\076\145\156\144\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\166\141\154\151\147\156\042\076\163\164\141\162\164" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\164\162\141\156\163" + "\151\164\151\157\156\055\164\171\160\145\042\076\143\162\157\163" + "\163\146\141\144\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\143\141\156\055\146\157\143\165\163\042\076\106\141\154\163\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\141\156\055\164" + "\141\162\147\145\164\042\076\106\141\154\163\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\163\164\171\154\145\076\074\143" + "\154\141\163\163\040\156\141\155\145\075\042\156\145\145\144\163" + "\055\141\164\164\145\156\164\151\157\156\042\057\076\074\057\163" + "\164\171\154\145\076\074\142\151\156\144\151\156\147\040\156\141" + "\155\145\075\042\162\145\166\145\141\154\055\143\150\151\154\144" + "\042\076\074\154\157\157\153\165\160\040\156\141\155\145\075\042" + "\156\145\145\144\163\055\141\164\164\145\156\164\151\157\156\042" + "\040\164\171\160\145\075\042\101\144\167\124\141\142\120\141\147" + "\145\042\076\074\154\157\157\153\165\160\040\156\141\155\145\075" + "\042\160\141\147\145\042\076\101\144\167\124\141\142\124\150\165" + "\155\142\156\141\151\154\074\057\154\157\157\153\165\160\076\074" + "\057\154\157\157\153\165\160\076\074\057\142\151\156\144\151\156" + "\147\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\101\144\167\107\151\172\155\157" + "\042\057\076\074\057\160\162\157\160\145\162\164\171\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\102\157\170\042\040\151\144" + "\075\042\151\143\157\156\137\164\151\164\154\145\137\142\157\170" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\141\156\055\164\141\162\147\145\164\042\076\106\141" + "\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\157\162" + "\151\145\156\164\141\164\151\157\156\042\076\150\157\162\151\172" + "\157\156\164\141\154\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\150\141\154\151\147\156\042\076\143\145\156\164\145\162\074\057" + "\160\162\157\160\145\162\164\171\076\074\163\164\171\154\145\076" + "\074\143\154\141\163\163\040\156\141\155\145\075\042\151\143\157" + "\156\055\164\151\164\154\145\055\142\157\170\042\057\076\074\057" + "\163\164\171\154\145\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123" + "\164\141\143\153\042\040\151\144\075\042\151\143\157\156\137\163" + "\164\141\143\153\042\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123" + "\164\141\143\153\120\141\147\145\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\156\141\155\145\042\076" + "\151\143\157\156\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143" + "\150\151\154\144\042\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\107\164\153\111\155\141\147\145\042\040\151" + "\144\075\042\151\143\157\156\042\076\074\163\164\171\154\145\076" + "\074\143\154\141\163\163\040\156\141\155\145\075\042\164\141\142" + "\055\151\143\157\156\042\057\076\074\057\163\164\171\154\145\076" + "\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145" + "\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123\164" + "\141\143\153\120\141\147\145\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\156\141\155\145\042\076\163" + "\160\151\156\156\145\162\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\123\160\151\156\156\145" + "\162\042\040\151\144\075\042\163\160\151\156\156\145\162\042\057" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\101\144\167\106\141\144\151\156\147\114\141\142" + "\145\154\042\076\074\142\151\156\144\151\156\147\040\156\141\155" + "\145\075\042\154\141\142\145\154\042\076\074\154\157\157\153\165" + "\160\040\156\141\155\145\075\042\164\151\164\154\145\042\040\164" + "\171\160\145\075\042\101\144\167\124\141\142\120\141\147\145\042" + "\076\074\154\157\157\153\165\160\040\156\141\155\145\075\042\160" + "\141\147\145\042\076\101\144\167\124\141\142\124\150\165\155\142" + "\156\141\151\154\074\057\154\157\157\153\165\160\076\074\057\154" + "\157\157\153\165\160\076\074\057\142\151\156\144\151\156\147\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\057\164\145\155\160\154\141\164\145\076\074\057" + "\151\156\164\145\162\146\141\143\145\076\012\000\000\050\165\165" + "\141\171\051\141\144\167\055\166\151\145\167\055\163\167\151\164" + "\143\150\145\162\055\142\165\164\164\157\156\056\165\151\000\000" + "\357\013\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\126\151\145\167\123\167\151\164\143\150\145" + "\162\102\165\164\164\157\156\042\040\160\141\162\145\156\164\075" + "\042\107\164\153\124\157\147\147\154\145\102\165\164\164\157\156" + "\042\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\146\154\141\164\042\057\076\074\057\163" + "\164\171\154\145\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123\164" + "\141\143\153\042\040\151\144\075\042\163\164\141\143\153\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\150\150\157\155\157\147\145\156\145\157\165\163\042\076\106\141" + "\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\150" + "\157\155\157\147\145\156\145\157\165\163\042\076\106\141\154\163" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\102\157\170\042\040\151\144\075\042\150\157" + "\162\151\172\157\156\164\141\154\137\142\157\170\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150\141" + "\154\151\147\156\042\076\143\145\156\164\145\162\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\157\162\151\145\156\164\141\164\151" + "\157\156\042\076\150\157\162\151\172\157\156\164\141\154\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\166\141\154\151\147\156\042" + "\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\167\151\144\145\042\057\076\074\057\163" + "\164\171\154\145\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\111\156" + "\144\151\143\141\164\157\162\102\151\156\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\141\154\151" + "\147\156\042\076\143\145\156\164\145\162\074\057\160\162\157\160" + "\145\162\164\171\076\074\142\151\156\144\151\156\147\040\156\141" + "\155\145\075\042\142\141\144\147\145\042\076\074\143\154\157\163" + "\165\162\145\040\164\171\160\145\075\042\147\143\150\141\162\141" + "\162\162\141\171\042\040\146\165\156\143\164\151\157\156\075\042" + "\147\145\164\137\142\141\144\147\145\137\164\145\170\164\042\076" + "\074\154\157\157\153\165\160\040\156\141\155\145\075\042\142\141" + "\144\147\145\055\156\165\155\142\145\162\042\076\101\144\167\126" + "\151\145\167\123\167\151\164\143\150\145\162\102\165\164\164\157" + "\156\074\057\154\157\157\153\165\160\076\074\057\143\154\157\163" + "\165\162\145\076\074\057\142\151\156\144\151\156\147\076\074\142" + "\151\156\144\151\156\147\040\156\141\155\145\075\042\156\145\145" + "\144\163\055\141\164\164\145\156\164\151\157\156\042\076\074\154" + "\157\157\153\165\160\040\156\141\155\145\075\042\156\145\145\144" + "\163\055\141\164\164\145\156\164\151\157\156\042\076\101\144\167" + "\126\151\145\167\123\167\151\164\143\150\145\162\102\165\164\164" + "\157\156\074\057\154\157\157\153\165\160\076\074\057\142\151\156" + "\144\151\156\147\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\111\155" + "\141\147\145\042\040\151\144\075\042\150\157\162\151\172\157\156" + "\164\141\154\137\151\155\141\147\145\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\151\143\157\156\055" + "\156\141\155\145\042\040\142\151\156\144\055\163\157\165\162\143" + "\145\075\042\101\144\167\126\151\145\167\123\167\151\164\143\150" + "\145\162\102\165\164\164\157\156\042\040\142\151\156\144\055\160" + "\162\157\160\145\162\164\171\075\042\151\143\157\156\055\156\141" + "\155\145\042\040\142\151\156\144\055\146\154\141\147\163\075\042" + "\163\171\156\143\055\143\162\145\141\164\145\042\057\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143" + "\143\145\163\163\151\142\154\145\055\162\157\154\145\042\076\160" + "\162\145\163\145\156\164\141\164\151\157\156\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\114\141\142\145\154\042\040\151\144\075\042\150" + "\157\162\151\172\157\156\164\141\154\137\154\141\142\145\154\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\154\141\142\145\154\042\040\142\151\156\144\055\163\157\165" + "\162\143\145\075\042\101\144\167\126\151\145\167\123\167\151\164" + "\143\150\145\162\102\165\164\164\157\156\042\040\142\151\156\144" + "\055\160\162\157\160\145\162\164\171\075\042\154\141\142\145\154" + "\042\040\142\151\156\144\055\146\154\141\147\163\075\042\163\171" + "\156\143\055\143\162\145\141\164\145\174\142\151\144\151\162\145" + "\143\164\151\157\156\141\154\042\057\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\165\163\145\055\165\156" + "\144\145\162\154\151\156\145\042\040\142\151\156\144\055\163\157" + "\165\162\143\145\075\042\101\144\167\126\151\145\167\123\167\151" + "\164\143\150\145\162\102\165\164\164\157\156\042\040\142\151\156" + "\144\055\160\162\157\160\145\162\164\171\075\042\165\163\145\055" + "\165\156\144\145\162\154\151\156\145\042\040\142\151\156\144\055" + "\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145\141" + "\164\145\174\142\151\144\151\162\145\143\164\151\157\156\141\154" + "\042\057\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\145\154\154\151\160\163\151\172\145\042\076\145\156" + "\144\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\102\157\170\042\040\151\144\075\042" + "\166\145\162\164\151\143\141\154\137\142\157\170\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150\141" + "\154\151\147\156\042\076\143\145\156\164\145\162\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\157\162\151\145\156\164\141\164\151" + "\157\156\042\076\166\145\162\164\151\143\141\154\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\166\141\154\151\147\156\042\076\143" + "\145\156\164\145\162\074\057\160\162\157\160\145\162\164\171\076" + "\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141" + "\155\145\075\042\156\141\162\162\157\167\042\057\076\074\057\163" + "\164\171\154\145\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\101\144\167\111\156" + "\144\151\143\141\164\157\162\102\151\156\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\150\141\154\151" + "\147\156\042\076\143\145\156\164\145\162\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\166\141\154\151\147\156\042\076\143\145\156" + "\164\145\162\074\057\160\162\157\160\145\162\164\171\076\074\142" + "\151\156\144\151\156\147\040\156\141\155\145\075\042\142\141\144" + "\147\145\042\076\074\143\154\157\163\165\162\145\040\164\171\160" + "\145\075\042\147\143\150\141\162\141\162\162\141\171\042\040\146" + "\165\156\143\164\151\157\156\075\042\147\145\164\137\142\141\144" + "\147\145\137\164\145\170\164\042\076\074\154\157\157\153\165\160" + "\040\156\141\155\145\075\042\142\141\144\147\145\055\156\165\155" + "\142\145\162\042\076\101\144\167\126\151\145\167\123\167\151\164" + "\143\150\145\162\102\165\164\164\157\156\074\057\154\157\157\153" + "\165\160\076\074\057\143\154\157\163\165\162\145\076\074\057\142" + "\151\156\144\151\156\147\076\074\142\151\156\144\151\156\147\040" + "\156\141\155\145\075\042\156\145\145\144\163\055\141\164\164\145" + "\156\164\151\157\156\042\076\074\154\157\157\153\165\160\040\156" + "\141\155\145\075\042\156\145\145\144\163\055\141\164\164\145\156" + "\164\151\157\156\042\076\101\144\167\126\151\145\167\123\167\151" + "\164\143\150\145\162\102\165\164\164\157\156\074\057\154\157\157" + "\153\165\160\076\074\057\142\151\156\144\151\156\147\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143\150" + "\151\154\144\042\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\111\155\141\147\145\042\040\151\144" + "\075\042\166\145\162\164\151\143\141\154\137\151\155\141\147\145" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\151\143\157\156\055\156\141\155\145\042\040\142\151\156" + "\144\055\163\157\165\162\143\145\075\042\101\144\167\126\151\145" + "\167\123\167\151\164\143\150\145\162\102\165\164\164\157\156\042" + "\040\142\151\156\144\055\160\162\157\160\145\162\164\171\075\042" + "\151\143\157\156\055\156\141\155\145\042\040\142\151\156\144\055" + "\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145\141" + "\164\145\042\057\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\141\143\143\145\163\163\151\142\154\145\055" + "\162\157\154\145\042\076\160\162\145\163\145\156\164\141\164\151" + "\157\156\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\114\141\142\145\154" + "\042\040\151\144\075\042\166\145\162\164\151\143\141\154\137\154" + "\141\142\145\154\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\154\141\142\145\154\042\040\142\151\156" + "\144\055\163\157\165\162\143\145\075\042\101\144\167\126\151\145" + "\167\123\167\151\164\143\150\145\162\102\165\164\164\157\156\042" + "\040\142\151\156\144\055\160\162\157\160\145\162\164\171\075\042" + "\154\141\142\145\154\042\040\142\151\156\144\055\146\154\141\147" + "\163\075\042\163\171\156\143\055\143\162\145\141\164\145\174\142" + "\151\144\151\162\145\143\164\151\157\156\141\154\042\057\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\165" + "\163\145\055\165\156\144\145\162\154\151\156\145\042\040\142\151" + "\156\144\055\163\157\165\162\143\145\075\042\101\144\167\126\151" + "\145\167\123\167\151\164\143\150\145\162\102\165\164\164\157\156" + "\042\040\142\151\156\144\055\160\162\157\160\145\162\164\171\075" + "\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042\040" + "\142\151\156\144\055\146\154\141\147\163\075\042\163\171\156\143" + "\055\143\162\145\141\164\145\174\142\151\144\151\162\145\143\164" + "\151\157\156\141\154\042\057\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\145\154\154\151\160\163\151\172" + "\145\042\076\145\156\144\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\104\162\157\160\103\157\156\164\162\157\154\154\145\162\115\157" + "\164\151\157\156\042\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\145\156\164\145\162\042\040\150\141\156\144\154" + "\145\162\075\042\144\162\141\147\137\145\156\164\145\162\137\143" + "\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042" + "\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\154\145\141\166\145\042\040\150\141\156\144\154\145\162\075\042" + "\144\162\141\147\137\154\145\141\166\145\137\143\142\042\040\163" + "\167\141\160\160\145\144\075\042\171\145\163\042\057\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\057\164\145\155\160\154\141\164\145\076\074\057\151\156\164\145" + "\162\146\141\143\145\076\012\000\000\050\165\165\141\171\051\141" + "\144\167\055\164\157\141\163\164\055\167\151\144\147\145\164\056" + "\165\151\000\000\000\000\000\000\131\010\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\124\157\141" + "\163\164\127\151\144\147\145\164\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\150\145\170\160\141\156" + "\144\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\164\153\105\166\145\156" + "\164\103\157\156\164\162\157\154\154\145\162\106\157\143\165\163" + "\042\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\145\156\164\145\162\042\040\150\141\156\144\154\145\162\075\042" + "\151\156\150\151\142\151\164\137\150\151\144\145\042\040\163\167" + "\141\160\160\145\144\075\042\171\145\163\042\057\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\154\145\141\166\145" + "\042\040\150\141\156\144\154\145\162\075\042\165\156\151\156\150" + "\151\142\151\164\137\150\151\144\145\042\040\163\167\141\160\160" + "\145\144\075\042\171\145\163\042\057\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\105\166\145\156\164\103\157\156\164\162\157\154" + "\154\145\162\115\157\164\151\157\156\042\076\074\163\151\147\156" + "\141\154\040\156\141\155\145\075\042\145\156\164\145\162\042\040" + "\150\141\156\144\154\145\162\075\042\151\156\150\151\142\151\164" + "\137\150\151\144\145\042\040\163\167\141\160\160\145\144\075\042" + "\171\145\163\042\057\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\154\145\141\166\145\042\040\150\141\156\144\154" + "\145\162\075\042\165\156\151\156\150\151\142\151\164\137\150\151" + "\144\145\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\107\164\153\107\145\163" + "\164\165\162\145\103\154\151\143\153\042\076\074\163\151\147\156" + "\141\154\040\156\141\155\145\075\042\160\162\145\163\163\145\144" + "\042\040\150\141\156\144\154\145\162\075\042\151\156\150\151\142" + "\151\164\137\150\151\144\145\042\040\163\167\141\160\160\145\144" + "\075\042\171\145\163\042\057\076\074\163\151\147\156\141\154\040" + "\156\141\155\145\075\042\162\145\154\145\141\163\145\144\042\040" + "\150\141\156\144\154\145\162\075\042\165\156\151\156\150\151\142" + "\151\164\137\150\151\144\145\042\040\163\167\141\160\160\145\144" + "\075\042\171\145\163\042\057\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101" + "\144\167\102\151\156\042\040\151\144\075\042\164\151\164\154\145" + "\137\142\151\156\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\150\145\170\160\141\156\144\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150\141" + "\154\151\147\156\042\076\163\164\141\162\164\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\102\165\164\164\157\156\042\040\151\144\075\042\141\143\164\151" + "\157\156\137\142\165\164\164\157\156\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\166\141\154\151\147" + "\156\042\076\143\145\156\164\145\162\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\165\163\145\055\165\156\144\145\162\154\151\156" + "\145\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\146\157\143\165\163\055\157\156\055\143\154\151\143\153" + "\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\141\156\055\163\150\162\151\156\153\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\142\151" + "\156\144\151\156\147\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\074\143\154\157\163\165\162\145\040\164\171" + "\160\145\075\042\147\142\157\157\154\145\141\156\042\040\146\165" + "\156\143\164\151\157\156\075\042\163\164\162\151\156\147\137\151" + "\163\137\156\157\164\137\145\155\160\164\171\042\076\074\154\157" + "\157\153\165\160\040\156\141\155\145\075\042\142\165\164\164\157" + "\156\055\154\141\142\145\154\042\040\164\171\160\145\075\042\101" + "\144\167\124\157\141\163\164\042\076\074\154\157\157\153\165\160" + "\040\156\141\155\145\075\042\164\157\141\163\164\042\076\101\144" + "\167\124\157\141\163\164\127\151\144\147\145\164\074\057\154\157" + "\157\153\165\160\076\074\057\154\157\157\153\165\160\076\074\057" + "\143\154\157\163\165\162\145\076\074\057\142\151\156\144\151\156" + "\147\076\074\142\151\156\144\151\156\147\040\156\141\155\145\075" + "\042\154\141\142\145\154\042\076\074\154\157\157\153\165\160\040" + "\156\141\155\145\075\042\142\165\164\164\157\156\055\154\141\142" + "\145\154\042\040\164\171\160\145\075\042\101\144\167\124\157\141" + "\163\164\042\076\074\154\157\157\153\165\160\040\156\141\155\145" + "\075\042\164\157\141\163\164\042\076\101\144\167\124\157\141\163" + "\164\127\151\144\147\145\164\074\057\154\157\157\153\165\160\076" + "\074\057\154\157\157\153\165\160\076\074\057\142\151\156\144\151" + "\156\147\076\074\142\151\156\144\151\156\147\040\156\141\155\145" + "\075\042\141\143\164\151\157\156\055\156\141\155\145\042\076\074" + "\154\157\157\153\165\160\040\156\141\155\145\075\042\141\143\164" + "\151\157\156\055\156\141\155\145\042\040\164\171\160\145\075\042" + "\101\144\167\124\157\141\163\164\042\076\074\154\157\157\153\165" + "\160\040\156\141\155\145\075\042\164\157\141\163\164\042\076\101" + "\144\167\124\157\141\163\164\127\151\144\147\145\164\074\057\154" + "\157\157\153\165\160\076\074\057\154\157\157\153\165\160\076\074" + "\057\142\151\156\144\151\156\147\076\074\142\151\156\144\151\156" + "\147\040\156\141\155\145\075\042\141\143\164\151\157\156\055\164" + "\141\162\147\145\164\042\076\074\154\157\157\153\165\160\040\156" + "\141\155\145\075\042\141\143\164\151\157\156\055\164\141\162\147" + "\145\164\042\040\164\171\160\145\075\042\101\144\167\124\157\141" + "\163\164\042\076\074\154\157\157\153\165\160\040\156\141\155\145" + "\075\042\164\157\141\163\164\042\076\101\144\167\124\157\141\163" + "\164\127\151\144\147\145\164\074\057\154\157\157\153\165\160\076" + "\074\057\154\157\157\153\165\160\076\074\057\142\151\156\144\151" + "\156\147\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\143\154\151\143\153\145\144\042\040\150\141\156\144\154\145" + "\162\075\042\141\143\164\151\157\156\137\143\154\151\143\153\145" + "\144\137\143\142\042\040\163\167\141\160\160\145\144\075\042\171" + "\145\163\042\057\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102" + "\165\164\164\157\156\042\040\151\144\075\042\143\154\157\163\145" + "\137\142\165\164\164\157\156\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\166\141\154\151\147\156\042" + "\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\151\143\157\156\055\156\141\155\145\042\076\167\151\156" + "\144\157\167\055\143\154\157\163\145\055\163\171\155\142\157\154" + "\151\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\146\157\143" + "\165\163\055\157\156\055\143\154\151\143\153\042\076\106\141\154" + "\163\145\074\057\160\162\157\160\145\162\164\171\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\143\154\151\143\153" + "\145\144\042\040\150\141\156\144\154\145\162\075\042\144\151\163" + "\155\151\163\163\042\040\163\167\141\160\160\145\144\075\042\171" + "\145\163\042\057\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\143\151\162\143\165\154\141" + "\162\042\057\076\074\143\154\141\163\163\040\156\141\155\145\075" + "\042\146\154\141\164\042\057\076\074\057\163\164\171\154\145\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\057\164\145\155\160\154\141\164\145\076\074\057\151\156" + "\164\145\162\146\141\143\145\076\012\000\000\050\165\165\141\171" + "\051\141\144\167\055\164\141\142\055\151\143\157\156\055\155\151" + "\163\163\151\156\147\055\163\171\155\142\157\154\151\143\056\163" + "\166\147\000\000\000\000\000\000\301\001\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\077\076\012\074\163\166\147\040\170\155\154\156\163" + "\075\042\150\164\164\160\072\057\057\167\167\167\056\167\063\056" + "\157\162\147\057\062\060\060\060\057\163\166\147\042\040\167\151" + "\144\164\150\075\042\061\066\042\040\150\145\151\147\150\164\075" + "\042\061\066\042\076\074\160\141\164\150\040\163\164\171\154\145" + "\075\042\146\151\154\154\072\043\062\145\063\064\063\066\073\146" + "\151\154\154\055\157\160\141\143\151\164\171\072\061\042\040\144" + "\075\042\115\063\056\060\060\066\040\060\143\055\061\056\066\064" + "\065\040\060\055\063\040\061\056\063\065\065\055\063\040\063\166" + "\061\150\062\126\063\143\060\055\056\065\067\061\056\064\062\071" + "\055\061\040\061\055\061\110\064\126\060\150\055\056\071\071\064" + "\172\115\066\040\060\166\062\150\064\126\060\110\066\172\155\066" + "\040\060\166\062\150\061\056\060\060\066\143\056\065\067\040\060" + "\040\061\040\056\064\062\071\040\061\040\061\166\061\150\062\126" + "\063\143\060\055\061\056\066\064\065\055\061\056\063\065\065\055" + "\063\055\063\055\063\110\061\062\172\115\056\060\060\066\040\066" + "\166\064\150\062\126\066\150\055\062\172\155\061\064\040\060\166" + "\064\150\062\126\066\150\055\062\172\155\055\061\064\040\066\166" + "\061\143\060\040\061\056\066\064\065\040\061\056\063\065\065\040" + "\063\040\063\040\063\110\064\166\055\062\150\055\056\071\071\064" + "\143\055\056\065\067\061\040\060\055\061\055\056\064\062\071\055" + "\061\055\061\166\055\061\150\055\062\172\155\061\064\040\060\166" + "\061\143\060\040\056\065\067\061\055\056\064\063\040\061\055\061" + "\040\061\110\061\062\166\062\150\061\056\060\060\066\143\061\056" + "\066\064\065\040\060\040\063\055\061\056\063\065\065\040\063\055" + "\063\166\055\061\150\055\062\172\115\066\040\061\064\166\062\150" + "\064\166\055\062\110\066\172\042\057\076\074\057\163\166\147\076" + "\012\000\000\050\165\165\141\171\051\141\144\167\055\145\170\160" + "\141\156\144\145\162\055\162\157\167\056\165\151\000\000\000\000" + "\005\015\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\105\170\160\141\156\144\145\162\122\157\167" + "\042\040\160\141\162\145\156\164\075\042\101\144\167\120\162\145" + "\146\145\162\145\156\143\145\163\122\157\167\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164" + "\151\166\141\164\141\142\154\145\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\163\151\147\156\141" + "\154\040\156\141\155\145\075\042\141\143\164\151\166\141\164\145" + "\042\040\150\141\156\144\154\145\162\075\042\141\143\164\151\166" + "\141\164\145\137\143\142\042\040\141\146\164\145\162\075\042\171" + "\145\163\042\057\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\145\155\160\164\171\042\057" + "\076\074\143\154\141\163\163\040\156\141\155\145\075\042\145\170" + "\160\141\156\144\145\162\042\057\076\074\057\163\164\171\154\145" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\102\157\170\042\040\151" + "\144\075\042\142\157\170\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\157\162\151\145\156\164\141\164" + "\151\157\156\042\076\166\145\162\164\151\143\141\154\074\057\160" + "\162\157\160\145\162\164\171\076\074\143\150\151\154\144\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\114\151\163\164\102\157\170\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\141\143\143\145\163\163" + "\151\142\154\145\055\162\157\154\145\042\076\147\145\156\145\162" + "\151\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\163\145\154" + "\145\143\164\151\157\156\055\155\157\144\145\042\076\156\157\156" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\041\055\055" + "\040\124\150\145\040\150\145\141\144\145\162\040\162\157\167\040" + "\151\163\040\146\157\143\165\163\141\142\154\145\054\040\141\143" + "\164\151\166\141\164\141\142\154\145\054\040\141\156\144\040\143" + "\141\156\040\142\145\040\141\143\164\151\166\141\164\145\144\012" + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040" + "\040\142\171\040\143\154\151\143\153\151\156\147\040\151\164\040" + "\157\162\040\166\151\141\040\153\145\171\142\157\141\162\144\056" + "\040\101\143\164\151\166\141\164\151\156\147\040\164\150\145\040" + "\162\157\167\040\163\150\157\165\154\144\012\040\040\040\040\040" + "\040\040\040\040\040\040\040\040\040\040\040\040\164\157\147\147" + "\154\145\040\151\164\163\040\145\170\160\141\156\163\151\157\156" + "\056\040\055\055\076\074\163\151\147\156\141\154\040\156\141\155" + "\145\075\042\162\157\167\055\141\143\164\151\166\141\164\145\144" + "\042\040\150\141\156\144\154\145\162\075\042\141\143\164\151\166" + "\141\164\145\137\143\142\042\040\141\146\164\145\162\075\042\171" + "\145\163\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\153\145\171\156\141\166\055\146\141\151\154\145\144\042\040" + "\150\141\156\144\154\145\162\075\042\153\145\171\156\141\166\137" + "\146\141\151\154\145\144\137\143\142\042\040\163\167\141\160\160" + "\145\144\075\042\171\145\163\042\057\076\074\143\150\151\154\144" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\101\144\167\101\143\164\151\157\156\122\157\167\042\040\151\144" + "\075\042\141\143\164\151\157\156\137\162\157\167\042\076\074\041" + "\055\055\040\124\150\145\040\150\145\141\144\145\162\040\162\157" + "\167\040\155\165\163\164\040\142\145\040\141\143\164\151\166\141" + "\164\141\142\154\145\040\164\157\040\164\157\147\147\154\145\040" + "\145\170\160\141\156\163\151\157\156\040\142\171\012\040\040\040" + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040" + "\040\040\143\154\151\143\153\151\156\147\040\151\164\040\157\162" + "\040\166\151\141\040\153\145\171\142\157\141\162\144\040\141\143" + "\164\151\166\141\164\151\157\156\056\040\055\055\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164" + "\151\166\141\164\141\142\154\145\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\041\055\055\040\124\150" + "\145\040\150\145\141\144\145\162\040\162\157\167\040\155\165\163" + "\164\040\142\145\040\146\157\143\165\163\141\142\154\145\040\146" + "\157\162\040\153\145\171\142\157\141\162\144\040\156\141\166\151" + "\147\141\164\151\157\156\040\164\157\012\040\040\040\040\040\040" + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\167" + "\157\162\153\040\141\163\040\145\170\160\145\143\164\145\144\056" + "\040\055\055\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\141\156\055\146\157\143\165\163\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164\151" + "\164\154\145\042\040\142\151\156\144\055\163\157\165\162\143\145" + "\075\042\101\144\167\105\170\160\141\156\144\145\162\122\157\167" + "\042\040\142\151\156\144\055\160\162\157\160\145\162\164\171\075" + "\042\164\151\164\154\145\042\040\142\151\156\144\055\146\154\141" + "\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145\042" + "\057\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042" + "\040\142\151\156\144\055\163\157\165\162\143\145\075\042\101\144" + "\167\105\170\160\141\156\144\145\162\122\157\167\042\040\142\151" + "\156\144\055\160\162\157\160\145\162\164\171\075\042\165\163\145" + "\055\165\156\144\145\162\154\151\156\145\042\040\142\151\156\144" + "\055\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145" + "\141\164\145\042\057\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\163\145\154\145\143\164\141\142\154\145" + "\042\040\142\151\156\144\055\163\157\165\162\143\145\075\042\101" + "\144\167\105\170\160\141\156\144\145\162\122\157\167\042\040\142" + "\151\156\144\055\160\162\157\160\145\162\164\171\075\042\164\151" + "\164\154\145\055\163\145\154\145\143\164\141\142\154\145\042\040" + "\142\151\156\144\055\146\154\141\147\163\075\042\163\171\156\143" + "\055\143\162\145\141\164\145\042\057\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\165\163\145\055\155\141" + "\162\153\165\160\042\040\142\151\156\144\055\163\157\165\162\143" + "\145\075\042\101\144\167\105\170\160\141\156\144\145\162\122\157" + "\167\042\040\142\151\156\144\055\160\162\157\160\145\162\164\171" + "\075\042\165\163\145\055\155\141\162\153\165\160\042\040\142\151" + "\156\144\055\146\154\141\147\163\075\042\163\171\156\143\055\143" + "\162\145\141\164\145\042\057\076\074\141\143\143\145\163\163\151" + "\142\151\154\151\164\171\076\074\163\164\141\164\145\040\156\141" + "\155\145\075\042\145\170\160\141\156\144\145\144\042\076\106\141" + "\154\163\145\074\057\163\164\141\164\145\076\074\057\141\143\143" + "\145\163\163\151\142\151\154\151\164\171\076\074\163\164\171\154" + "\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042\150" + "\145\141\144\145\162\042\057\076\074\057\163\164\171\154\145\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\102\157\170\042\040\151\144" + "\075\042\163\165\146\146\151\170\145\163\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\163\160\141\143" + "\151\156\147\042\076\061\062\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\123\167\151\164\143\150\042\040\151\144\075" + "\042\145\156\141\142\154\145\137\163\167\151\164\143\150\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\141\143\164\151\166\145\042\040\142\151\156\144\055\163\157\165" + "\162\143\145\075\042\101\144\167\105\170\160\141\156\144\145\162" + "\122\157\167\042\040\142\151\156\144\055\160\162\157\160\145\162" + "\164\171\075\042\145\156\141\142\154\145\055\145\170\160\141\156" + "\163\151\157\156\042\040\142\151\156\144\055\146\154\141\147\163" + "\075\042\142\151\144\151\162\145\143\164\151\157\156\141\154\174" + "\163\171\156\143\055\143\162\145\141\164\145\042\057\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\141" + "\154\151\147\156\042\076\143\145\156\164\145\162\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\166\151\163\151\142\154\145\042\040" + "\142\151\156\144\055\163\157\165\162\143\145\075\042\101\144\167" + "\105\170\160\141\156\144\145\162\122\157\167\042\040\142\151\156" + "\144\055\160\162\157\160\145\162\164\171\075\042\163\150\157\167" + "\055\145\156\141\142\154\145\055\163\167\151\164\143\150\042\040" + "\142\151\156\144\055\146\154\141\147\163\075\042\142\151\144\151" + "\162\145\143\164\151\157\156\141\154\174\163\171\156\143\055\143" + "\162\145\141\164\145\042\057\076\074\141\143\143\145\163\163\151" + "\142\151\154\151\164\171\076\074\162\145\154\141\164\151\157\156" + "\040\156\141\155\145\075\042\154\141\142\145\154\154\145\144\055" + "\142\171\042\076\101\144\167\105\170\160\141\156\144\145\162\122" + "\157\167\074\057\162\145\154\141\164\151\157\156\076\074\162\145" + "\154\141\164\151\157\156\040\156\141\155\145\075\042\144\145\163" + "\143\162\151\142\145\144\055\142\171\042\076\101\144\167\105\170" + "\160\141\156\144\145\162\122\157\167\074\057\162\145\154\141\164" + "\151\157\156\076\074\057\141\143\143\145\163\163\151\142\151\154" + "\151\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\111\155" + "\141\147\145\042\040\151\144\075\042\151\155\141\147\145\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\151\143\157\156\055\156\141\155\145\042\076\141\144\167\055\145" + "\170\160\141\156\144\145\162\055\141\162\162\157\167\055\163\171" + "\155\142\157\154\151\143\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\163\145\156\163\151\164\151\166\145\042\040\142\151\156\144" + "\055\163\157\165\162\143\145\075\042\101\144\167\105\170\160\141" + "\156\144\145\162\122\157\167\042\040\142\151\156\144\055\160\162" + "\157\160\145\162\164\171\075\042\145\156\141\142\154\145\055\145" + "\170\160\141\156\163\151\157\156\042\040\142\151\156\144\055\146" + "\154\141\147\163\075\042\163\171\156\143\055\143\162\145\141\164" + "\145\042\057\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\141\143\143\145\163\163\151\142\154\145\055\162" + "\157\154\145\042\076\160\162\145\163\145\156\164\141\164\151\157" + "\156\074\057\160\162\157\160\145\162\164\171\076\074\163\164\171" + "\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042" + "\145\170\160\141\156\144\145\162\055\162\157\167\055\141\162\162" + "\157\167\042\057\076\074\057\163\164\171\154\145\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\122\145\166\145\141\154\145" + "\162\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\162\145\166\145\141\154\055\143\150\151\154\144\042" + "\040\142\151\156\144\055\163\157\165\162\143\145\075\042\101\144" + "\167\105\170\160\141\156\144\145\162\122\157\167\042\040\142\151" + "\156\144\055\160\162\157\160\145\162\164\171\075\042\145\170\160" + "\141\156\144\145\144\042\040\142\151\156\144\055\146\154\141\147" + "\163\075\042\163\171\156\143\055\143\162\145\141\164\145\042\057" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\164\162\141\156\163\151\164\151\157\156\055\164\171\160\145" + "\042\076\163\154\151\144\145\055\165\160\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\114\151" + "\163\164\102\157\170\042\040\151\144\075\042\154\151\163\164\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\163\145\154\145\143\164\151\157\156\055\155\157\144\145\042" + "\076\156\157\156\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\163\151\147\156\141\154\040\156\141\155\145\075\042\153\145" + "\171\156\141\166\055\146\141\151\154\145\144\042\040\150\141\156" + "\144\154\145\162\075\042\153\145\171\156\141\166\137\146\141\151" + "\154\145\144\137\143\142\042\040\163\167\141\160\160\145\144\075" + "\042\171\145\163\042\057\076\074\163\164\171\154\145\076\074\143" + "\154\141\163\163\040\156\141\155\145\075\042\156\145\163\164\145" + "\144\042\057\076\074\057\163\164\171\154\145\076\074\057\157\142" + "\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\164\145\155\160\154\141\164\145\076" + "\074\057\151\156\164\145\162\146\141\143\145\076\012\000\000\050" + "\165\165\141\171\051\141\144\167\055\155\145\163\163\141\147\145" + "\055\144\151\141\154\157\147\056\165\151\000\000\000\000\000\000" + "\020\006\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\115\145\163\163\141\147\145\104\151\141\154" + "\157\147\042\040\160\141\162\145\156\164\075\042\107\164\153\127" + "\151\156\144\157\167\042\076\074\163\164\171\154\145\076\074\143" + "\154\141\163\163\040\156\141\155\145\075\042\155\145\163\163\141" + "\147\145\144\151\141\154\157\147\042\057\076\074\057\163\164\171" + "\154\145\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\164\151\164\154\145\142\141\162\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102" + "\157\170\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\166\151\163\151\142\154\145\042\076\106\141\154" + "\163\145\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\143\150\151\154\144\042\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\127\151\156\144\157\167" + "\110\141\156\144\154\145\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\102\157\170\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\157\162\151\145\156\164\141\164\151\157" + "\156\042\076\166\145\162\164\151\143\141\154\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102" + "\157\170\042\040\151\144\075\042\155\145\163\163\141\147\145\137" + "\141\162\145\141\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\157\162\151\145\156\164\141\164\151\157" + "\156\042\076\166\145\162\164\151\143\141\154\074\057\160\162\157" + "\160\145\162\164\171\076\074\163\164\171\154\145\076\074\143\154" + "\141\163\163\040\156\141\155\145\075\042\155\145\163\163\141\147" + "\145\055\141\162\145\141\042\057\076\074\057\163\164\171\154\145" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\114\141\142\145\154\042" + "\040\151\144\075\042\150\145\141\144\151\156\147\137\154\141\142" + "\145\154\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\167\162\141\160\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\167\162\141\160\055\155\157" + "\144\145\042\076\167\157\162\144\055\143\150\141\162\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\155\141\170\055\167\151\144\164" + "\150\055\143\150\141\162\163\042\076\062\060\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\152\165\163\164\151\146\171\042\076\143" + "\145\156\164\145\162\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\170\141\154\151\147\156\042\076\060\056\065\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\166\151\163\151\142\154\145\042\076\106" + "\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155" + "\145\075\042\164\151\164\154\145\055\062\042\057\076\074\057\163" + "\164\171\154\145\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\114" + "\141\142\145\154\042\040\151\144\075\042\142\157\144\171\137\154" + "\141\142\145\154\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\166\145\170\160\141\156\144\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\167\162" + "\141\160\042\076\124\162\165\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\167\162\141\160\055\155\157\144\145\042\076\167\157" + "\162\144\055\143\150\141\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\155\141\170\055\167\151\144\164\150\055\143\150\141\162" + "\163\042\076\064\060\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\152\165\163\164\151\146\171\042\076\143\145\156\164\145\162\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\170\141\154\151\147\156" + "\042\076\060\056\065\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\123\145\160\141\162\141\164\157\162\042\057\076" + "\074\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144" + "\167\107\151\172\155\157\042\040\151\144\075\042\162\145\163\160" + "\157\156\163\145\137\141\162\145\141\042\076\074\163\164\171\154" + "\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042\162" + "\145\163\160\157\156\163\145\055\141\162\145\141\042\057\076\074" + "\057\163\164\171\154\145\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076" + "\074\057\164\145\155\160\154\141\164\145\076\074\057\151\156\164" + "\145\162\146\141\143\145\076\012\000\000\050\165\165\141\171\051" + "\141\144\167\055\164\141\142\055\165\156\160\151\156\055\163\171" + "\155\142\157\154\151\143\056\163\166\147\000\000\000\000\000\000" + "\252\001\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\077\076\012\074\163" + "\166\147\040\170\155\154\156\163\075\042\150\164\164\160\072\057" + "\057\167\167\167\056\167\063\056\157\162\147\057\062\060\060\060" + "\057\163\166\147\042\040\167\151\144\164\150\075\042\061\066\042" + "\040\150\145\151\147\150\164\075\042\061\066\042\076\074\160\141" + "\164\150\040\163\164\171\154\145\075\042\163\164\162\157\153\145" + "\072\156\157\156\145\073\146\151\154\154\055\162\165\154\145\072" + "\156\157\156\172\145\162\157\073\146\151\154\154\072\043\062\062" + "\062\073\146\151\154\154\055\157\160\141\143\151\164\171\072\061" + "\042\040\144\075\042\115\071\040\061\061\110\067\166\063\154\061" + "\040\061\040\061\055\061\132\155\062\056\062\062\063\055\070\056" + "\067\060\067\101\061\040\061\040\060\040\060\040\060\040\061\060" + "\056\065\061\066\040\062\110\065\056\065\141\061\040\061\040\060" + "\040\061\040\060\040\060\040\062\150\065\056\060\061\066\141\061" + "\056\060\060\062\040\061\056\060\060\062\040\060\040\060\040\060" + "\040\056\067\060\067\055\061\056\067\060\067\132\115\064\040\061" + "\060\143\060\055\062\056\062\061\040\061\056\067\071\055\064\040" + "\064\055\064\163\064\040\061\056\067\071\040\064\040\064\132\155" + "\060\040\060\042\057\076\074\160\141\164\150\040\163\164\171\154" + "\145\075\042\163\164\162\157\153\145\072\156\157\156\145\073\146" + "\151\154\154\055\162\165\154\145\072\156\157\156\172\145\162\157" + "\073\146\151\154\154\072\043\062\062\062\073\146\151\154\154\055" + "\157\160\141\143\151\164\171\072\061\042\040\144\075\042\155\065" + "\056\064\064\061\040\062\056\071\067\063\056\070\071\065\040\065" + "\056\061\066\064\110\071\056\067\061\154\056\070\064\070\055\065" + "\056\061\061\132\155\060\040\060\042\057\076\074\057\163\166\147" + "\076\012\000\000\050\165\165\141\171\051\141\144\167\055\141\143" + "\164\151\157\156\055\162\157\167\056\165\151\000\000\000\000\000" + "\331\013\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\101\143\164\151\157\156\122\157\167\042\040" + "\160\141\162\145\156\164\075\042\101\144\167\120\162\145\146\145" + "\162\145\156\143\145\163\122\157\167\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151\166" + "\141\164\141\142\154\145\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\141\143\143\145\163\163\151" + "\142\151\154\151\164\171\076\074\162\145\154\141\164\151\157\156" + "\040\156\141\155\145\075\042\154\141\142\145\154\154\145\144\055" + "\142\171\042\076\164\151\164\154\145\074\057\162\145\154\141\164" + "\151\157\156\076\074\162\145\154\141\164\151\157\156\040\156\141" + "\155\145\075\042\144\145\163\143\162\151\142\145\144\055\142\171" + "\042\076\163\165\142\164\151\164\154\145\074\057\162\145\154\141" + "\164\151\157\156\076\074\057\141\143\143\145\163\163\151\142\151" + "\154\151\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102\157" + "\170\042\040\151\144\075\042\150\145\141\144\145\162\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166" + "\141\154\151\147\156\042\076\143\145\156\164\145\162\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\150\145\170\160\141\156\144\042" + "\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040\156" + "\141\155\145\075\042\150\145\141\144\145\162\042\057\076\074\057" + "\163\164\171\154\145\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102" + "\157\170\042\040\151\144\075\042\160\162\145\146\151\170\145\163" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\163\164\171\154" + "\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042\160" + "\162\145\146\151\170\145\163\042\057\076\074\057\163\164\171\154" + "\145\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\164\153\111\155\141\147" + "\145\042\040\151\144\075\042\151\155\141\147\145\042\076\074\142" + "\151\156\144\151\156\147\040\156\141\155\145\075\042\166\151\163" + "\151\142\154\145\042\076\074\143\154\157\163\165\162\145\040\146" + "\165\156\143\164\151\157\156\075\042\163\164\162\151\156\147\137" + "\151\163\137\156\157\164\137\145\155\160\164\171\042\040\164\171" + "\160\145\075\042\147\142\157\157\154\145\141\156\042\076\074\154" + "\157\157\153\165\160\040\156\141\155\145\075\042\151\143\157\156" + "\055\156\141\155\145\042\076\151\155\141\147\145\074\057\154\157" + "\157\153\165\160\076\074\057\143\154\157\163\165\162\145\076\074" + "\057\142\151\156\144\151\156\147\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\166\141\154\151\147\156\042" + "\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\151\143\157\156\042\057\076\074\057\163" + "\164\171\154\145\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102" + "\157\170\042\040\151\144\075\042\164\151\164\154\145\137\142\157" + "\170\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\157\162\151\145\156\164\141\164\151\157\156\042\076" + "\166\145\162\164\151\143\141\154\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\166\141\154\151\147\156\042\076\143\145\156\164\145" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\150\145\170\160" + "\141\156\144\042\076\124\162\165\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\163\164\171\154\145\076\074\143\154\141\163" + "\163\040\156\141\155\145\075\042\164\151\164\154\145\042\057\076" + "\074\057\163\164\171\154\145\076\074\143\150\151\154\144\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\114\141\142\145\154\042\040\151\144\075\042\164\151\164\154" + "\145\042\076\074\142\151\156\144\151\156\147\040\156\141\155\145" + "\075\042\166\151\163\151\142\154\145\042\076\074\143\154\157\163" + "\165\162\145\040\146\165\156\143\164\151\157\156\075\042\163\164" + "\162\151\156\147\137\151\163\137\156\157\164\137\145\155\160\164" + "\171\042\040\164\171\160\145\075\042\147\142\157\157\154\145\141" + "\156\042\076\074\154\157\157\153\165\160\040\156\141\155\145\075" + "\042\154\141\142\145\154\042\076\164\151\164\154\145\074\057\154" + "\157\157\153\165\160\076\074\057\143\154\157\163\165\162\145\076" + "\074\057\142\151\156\144\151\156\147\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\145\154\154\151\160\163" + "\151\172\145\042\076\156\157\156\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\154\141\142\145\154\042\040\142\151\156\144\055" + "\163\157\165\162\143\145\075\042\101\144\167\101\143\164\151\157" + "\156\122\157\167\042\040\142\151\156\144\055\160\162\157\160\145" + "\162\164\171\075\042\164\151\164\154\145\042\040\142\151\156\144" + "\055\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145" + "\141\164\145\042\057\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\154\151\156\145\163\042\076\060\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\155\156\145\155\157\156\151" + "\143\055\167\151\144\147\145\164\042\076\101\144\167\101\143\164" + "\151\157\156\122\157\167\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\165\163\145\055\165\156\144\145\162\154\151\156\145\042\040" + "\142\151\156\144\055\163\157\165\162\143\145\075\042\101\144\167" + "\101\143\164\151\157\156\122\157\167\042\040\142\151\156\144\055" + "\160\162\157\160\145\162\164\171\075\042\165\163\145\055\165\156" + "\144\145\162\154\151\156\145\042\040\142\151\156\144\055\146\154" + "\141\147\163\075\042\163\171\156\143\055\143\162\145\141\164\145" + "\042\057\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\163\145\154\145\143\164\141\142\154\145\042\040\142" + "\151\156\144\055\163\157\165\162\143\145\075\042\101\144\167\101" + "\143\164\151\157\156\122\157\167\042\040\142\151\156\144\055\160" + "\162\157\160\145\162\164\171\075\042\164\151\164\154\145\055\163" + "\145\154\145\143\164\141\142\154\145\042\040\142\151\156\144\055" + "\146\154\141\147\163\075\042\163\171\156\143\055\143\162\145\141" + "\164\145\042\057\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\167\162\141\160\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\167\162\141\160\055\155" + "\157\144\145\042\076\167\157\162\144\055\143\150\141\162\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\170\141\154\151\147\156\042" + "\076\060\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\165\163\145" + "\055\155\141\162\153\165\160\042\040\142\151\156\144\055\163\157" + "\165\162\143\145\075\042\101\144\167\101\143\164\151\157\156\122" + "\157\167\042\040\142\151\156\144\055\160\162\157\160\145\162\164" + "\171\075\042\165\163\145\055\155\141\162\153\165\160\042\040\142" + "\151\156\144\055\146\154\141\147\163\075\042\163\171\156\143\055" + "\143\162\145\141\164\145\042\057\076\074\163\164\171\154\145\076" + "\074\143\154\141\163\163\040\156\141\155\145\075\042\164\151\164" + "\154\145\042\057\076\074\057\163\164\171\154\145\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\114\141\142\145\154\042\040\151\144" + "\075\042\163\165\142\164\151\164\154\145\042\076\074\142\151\156" + "\144\151\156\147\040\156\141\155\145\075\042\166\151\163\151\142" + "\154\145\042\076\074\143\154\157\163\165\162\145\040\146\165\156" + "\143\164\151\157\156\075\042\163\164\162\151\156\147\137\151\163" + "\137\156\157\164\137\145\155\160\164\171\042\040\164\171\160\145" + "\075\042\147\142\157\157\154\145\141\156\042\076\074\154\157\157" + "\153\165\160\040\156\141\155\145\075\042\154\141\142\145\154\042" + "\076\163\165\142\164\151\164\154\145\074\057\154\157\157\153\165" + "\160\076\074\057\143\154\157\163\165\162\145\076\074\057\142\151" + "\156\144\151\156\147\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\145\154\154\151\160\163\151\172\145\042" + "\076\156\157\156\145\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\154\151\156\145\163\042\076\060\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\163\145\154\145\143\164\141\142\154\145\042\040\142" + "\151\156\144\055\163\157\165\162\143\145\075\042\101\144\167\101" + "\143\164\151\157\156\122\157\167\042\040\142\151\156\144\055\160" + "\162\157\160\145\162\164\171\075\042\163\165\142\164\151\164\154" + "\145\055\163\145\154\145\143\164\141\142\154\145\042\040\142\151" + "\156\144\055\146\154\141\147\163\075\042\163\171\156\143\055\143" + "\162\145\141\164\145\042\057\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\167\162\141\160\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\167\162\141" + "\160\055\155\157\144\145\042\076\167\157\162\144\055\143\150\141" + "\162\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\170\141\154\151" + "\147\156\042\076\060\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\165\163\145\055\155\141\162\153\165\160\042\040\142\151\156\144" + "\055\163\157\165\162\143\145\075\042\101\144\167\101\143\164\151" + "\157\156\122\157\167\042\040\142\151\156\144\055\160\162\157\160" + "\145\162\164\171\075\042\165\163\145\055\155\141\162\153\165\160" + "\042\040\142\151\156\144\055\146\154\141\147\163\075\042\163\171" + "\156\143\055\143\162\145\141\164\145\042\057\076\074\163\164\171" + "\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042" + "\163\165\142\164\151\164\154\145\042\057\076\074\057\163\164\171" + "\154\145\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102\157" + "\170\042\040\151\144\075\042\163\165\146\146\151\170\145\163\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\163\164\171\154\145" + "\076\074\143\154\141\163\163\040\156\141\155\145\075\042\163\165" + "\146\146\151\170\145\163\042\057\076\074\057\163\164\171\154\145" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\107" + "\145\163\164\165\162\145\103\154\151\143\153\042\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\160\162\145\163\163" + "\145\144\042\040\150\141\156\144\154\145\162\075\042\160\162\145" + "\163\163\145\144\137\143\142\042\040\163\167\141\160\160\145\144" + "\075\042\171\145\163\042\057\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\057\164\145\155\160\154" + "\141\164\145\076\074\057\151\156\164\145\162\146\141\143\145\076" + "\012\000\000\050\165\165\141\171\051\141\144\167\055\164\141\142" + "\056\165\151\000\000\000\000\000\230\013\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\124\141\142" + "\042\040\160\141\162\145\156\164\075\042\107\164\153\127\151\144" + "\147\145\164\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\146\157\143\165\163\141\142\154\145\042\076" + "\164\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\141\143\143\145\163\163\151\142\151\154\151\164\171\076\074\162" + "\145\154\141\164\151\157\156\040\156\141\155\145\075\042\154\141" + "\142\145\154\154\145\144\055\142\171\042\076\164\151\164\154\145" + "\074\057\162\145\154\141\164\151\157\156\076\074\057\141\143\143" + "\145\163\163\151\142\151\154\151\164\171\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\105\166\145\156\164\103\157\156\164\162\157\154" + "\154\145\162\115\157\164\151\157\156\042\076\074\163\151\147\156" + "\141\154\040\156\141\155\145\075\042\145\156\164\145\162\042\040" + "\150\141\156\144\154\145\162\075\042\145\156\164\145\162\137\143" + "\142\042\040\163\167\141\160\160\145\144\075\042\164\162\165\145" + "\042\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\155\157\164\151\157\156\042\040\150\141\156\144\154\145\162" + "\075\042\155\157\164\151\157\156\137\143\142\042\040\163\167\141" + "\160\160\145\144\075\042\164\162\165\145\042\057\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\154\145\141\166\145" + "\042\040\150\141\156\144\154\145\162\075\042\154\145\141\166\145" + "\137\143\142\042\040\163\167\141\160\160\145\144\075\042\164\162" + "\165\145\042\057\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\104" + "\162\157\160\124\141\162\147\145\164\042\040\151\144\075\042\144" + "\162\157\160\137\164\141\162\147\145\164\042\076\074\163\151\147" + "\156\141\154\040\156\141\155\145\075\042\144\162\157\160\042\040" + "\150\141\156\144\154\145\162\075\042\144\162\157\160\137\143\142" + "\042\040\163\167\141\160\160\145\144\075\042\164\162\165\145\042" + "\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\145\156\164\145\162\042\040\150\141\156\144\154\145\162\075\042" + "\145\170\164\162\141\137\144\162\141\147\137\145\156\164\145\162" + "\137\143\142\042\040\163\167\141\160\160\145\144\075\042\164\162" + "\165\145\042\057\076\074\163\151\147\156\141\154\040\156\141\155" + "\145\075\042\155\157\164\151\157\156\042\040\150\141\156\144\154" + "\145\162\075\042\145\170\164\162\141\137\144\162\141\147\137\155" + "\157\164\151\157\156\137\143\142\042\040\163\167\141\160\160\145" + "\144\075\042\164\162\165\145\042\057\076\074\163\151\147\156\141" + "\154\040\156\141\155\145\075\042\156\157\164\151\146\171\072\072" + "\166\141\154\165\145\042\040\150\141\156\144\154\145\162\075\042" + "\145\170\164\162\141\137\144\162\141\147\137\156\157\164\151\146" + "\171\137\166\141\154\165\145\137\143\142\042\040\163\167\141\160" + "\160\145\144\075\042\164\162\165\145\042\057\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\123\164\141\143\153\042\040\151\144\075" + "\042\151\143\157\156\137\163\164\141\143\153\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\155\141\162" + "\147\151\156\055\163\164\141\162\164\042\076\064\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\155\141\162\147\151\156\055\145\156" + "\144\042\076\062\074\057\160\162\157\160\145\162\164\171\076\074" + "\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\107\164\153\123\164\141\143\153\120\141\147" + "\145\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\156\141\155\145\042\076\151\143\157\156\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\111\155\141\147\145\042\040\151\144\075\042\151\143\157\156" + "\042\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\164\141\142\055\151\143\157\156\042\057" + "\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143" + "\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\123\164\141\143\153\120\141\147\145" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\156\141\155\145\042\076\163\160\151\156\156\145\162\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\123\160\151\156\156\145\162\042\040\151\144\075\042" + "\163\160\151\156\156\145\162\042\057\076\074\057\160\162\157\160" + "\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\106\141\144\151\156\147\114\141\142\145\154\042\040\151\144\075" + "\042\164\151\164\154\145\042\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\155\141\162\147\151\156\055\163" + "\164\141\162\164\042\076\064\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\155\141\162\147\151\156\055\145\156\144\042\076\064\074" + "\057\160\162\157\160\145\162\164\171\076\074\142\151\156\144\151" + "\156\147\040\156\141\155\145\075\042\154\141\142\145\154\042\076" + "\074\154\157\157\153\165\160\040\156\141\155\145\075\042\164\151" + "\164\154\145\042\040\164\171\160\145\075\042\101\144\167\124\141" + "\142\120\141\147\145\042\076\074\154\157\157\153\165\160\040\156" + "\141\155\145\075\042\160\141\147\145\042\076\101\144\167\124\141" + "\142\074\057\154\157\157\153\165\160\076\074\057\154\157\157\153" + "\165\160\076\074\057\142\151\156\144\151\156\147\076\074\163\164" + "\171\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075" + "\042\164\141\142\055\164\151\164\154\145\042\057\076\074\057\163" + "\164\171\154\145\076\074\057\157\142\152\145\143\164\076\074\057" + "\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102" + "\165\164\164\157\156\042\040\151\144\075\042\151\156\144\151\143" + "\141\164\157\162\137\142\164\156\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\141\156\055\146\157" + "\143\165\163\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\166\141\154\151\147\156\042\076\143\145\156" + "\164\145\162\074\057\160\162\157\160\145\162\164\171\076\074\142" + "\151\156\144\151\156\147\040\156\141\155\145\075\042\164\157\157" + "\154\164\151\160\055\155\141\162\153\165\160\042\076\074\154\157" + "\157\153\165\160\040\156\141\155\145\075\042\151\156\144\151\143" + "\141\164\157\162\055\164\157\157\154\164\151\160\042\040\164\171" + "\160\145\075\042\101\144\167\124\141\142\120\141\147\145\042\076" + "\074\154\157\157\153\165\160\040\156\141\155\145\075\042\160\141" + "\147\145\042\076\101\144\167\124\141\142\074\057\154\157\157\153" + "\165\160\076\074\057\154\157\157\153\165\160\076\074\057\142\151" + "\156\144\151\156\147\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\143\154\151\143\153\145\144\042\040\150\141\156" + "\144\154\145\162\075\042\151\156\144\151\143\141\164\157\162\137" + "\143\154\151\143\153\145\144\137\143\142\042\040\163\167\141\160" + "\160\145\144\075\042\164\162\165\145\042\057\076\074\163\164\171" + "\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042" + "\146\154\141\164\042\057\076\074\143\154\141\163\163\040\156\141" + "\155\145\075\042\164\141\142\055\151\156\144\151\143\141\164\157" + "\162\042\057\076\074\143\154\141\163\163\040\156\141\155\145\075" + "\042\151\155\141\147\145\055\142\165\164\164\157\156\042\057\076" + "\074\057\163\164\171\154\145\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\111\155\141\147\145\042\040\151\144\075\042\151\156\144\151" + "\143\141\164\157\162\137\151\143\157\156\042\076\074\142\151\156" + "\144\151\156\147\040\156\141\155\145\075\042\147\151\143\157\156" + "\042\076\074\154\157\157\153\165\160\040\156\141\155\145\075\042" + "\151\156\144\151\143\141\164\157\162\055\151\143\157\156\042\040" + "\164\171\160\145\075\042\101\144\167\124\141\142\120\141\147\145" + "\042\076\074\154\157\157\153\165\160\040\156\141\155\145\075\042" + "\160\141\147\145\042\076\101\144\167\124\141\142\074\057\154\157" + "\157\153\165\160\076\074\057\154\157\157\153\165\160\076\074\057" + "\142\151\156\144\151\156\147\076\074\057\157\142\152\145\143\164" + "\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150" + "\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163" + "\163\075\042\107\164\153\102\165\164\164\157\156\042\040\151\144" + "\075\042\143\154\157\163\145\137\142\164\156\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\143\141\156" + "\055\146\157\143\165\163\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\157\160\141\143\151\164\171\042" + "\076\060\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\166\141\154" + "\151\147\156\042\076\143\145\156\164\145\162\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\164\157\157\154\164\151\160\055\164\145" + "\170\164\042\040\164\162\141\156\163\154\141\164\141\142\154\145" + "\075\042\171\145\163\042\076\103\154\157\163\145\040\124\141\142" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\151\143\157\156\055" + "\156\141\155\145\042\076\167\151\156\144\157\167\055\143\154\157" + "\163\145\055\163\171\155\142\157\154\151\143\074\057\160\162\157" + "\160\145\162\164\171\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\143\154\151\143\153\145\144\042\040\150\141\156" + "\144\154\145\162\075\042\143\154\157\163\145\137\143\154\151\143" + "\153\145\144\137\143\142\042\040\163\167\141\160\160\145\144\075" + "\042\164\162\165\145\042\057\076\074\163\164\171\154\145\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\146\154\141\164" + "\042\057\076\074\143\154\141\163\163\040\156\141\155\145\075\042" + "\164\141\142\055\143\154\157\163\145\055\142\165\164\164\157\156" + "\042\057\076\074\057\163\164\171\154\145\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\107\151\172\155\157\042\040\151\144\075\042" + "\156\145\145\144\163\137\141\164\164\145\156\164\151\157\156\137" + "\151\156\144\151\143\141\164\157\162\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\163\163\055\156" + "\141\155\145\042\076\151\156\144\151\143\141\164\157\162\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\166\141\154\151\147\156\042" + "\076\145\156\144\074\057\160\162\157\160\145\162\164\171\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\057\164\145\155\160\154\141\164\145\076\074\057\151\156\164" + "\145\162\146\141\143\145\076\012\000\000\050\165\165\141\171\051" + "\141\144\167\055\166\151\145\167\055\163\167\151\164\143\150\145" + "\162\055\142\141\162\056\165\151\324\001\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\126\151\145" + "\167\123\167\151\164\143\150\145\162\102\141\162\042\040\160\141" + "\162\145\156\164\075\042\107\164\153\127\151\144\147\145\164\042" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\101\143\164\151\157\156" + "\102\141\162\042\040\151\144\075\042\141\143\164\151\157\156\137" + "\142\141\162\042\076\074\143\150\151\154\144\040\164\171\160\145" + "\075\042\143\145\156\164\145\162\042\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\126\151\145\167" + "\123\167\151\164\143\150\145\162\042\040\151\144\075\042\166\151" + "\145\167\137\163\167\151\164\143\150\145\162\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\155\141\162" + "\147\151\156\055\163\164\141\162\164\042\076\061\060\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\155\141\162\147\151\156\055\145" + "\156\144\042\076\061\060\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\160\157\154\151\143\171\042\076\156\141\162\162\157\167\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\057\164\145" + "\155\160\154\141\164\145\076\074\057\151\156\164\145\162\146\141" + "\143\145\076\012\000\000\050\165\165\141\171\051\147\156\157\155" + "\145\057\000\000\003\000\000\000\163\143\141\154\141\142\154\145" + "\057\000\000\000\036\000\000\000\045\000\000\000\141\143\164\151" + "\157\156\163\057\044\000\000\000\040\000\000\000\013\000\000\000" + "\014\000\000\000\157\162\147\057\034\000\000\000\141\144\167\055" + "\145\170\160\141\156\144\145\162\055\141\162\162\157\167\055\163" + "\171\155\142\157\154\151\143\056\163\166\147\000\000\000\000\000" + "\001\001\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\077\076\012\074\163" + "\166\147\040\170\155\154\156\163\075\042\150\164\164\160\072\057" + "\057\167\167\167\056\167\063\056\157\162\147\057\062\060\060\060" + "\057\163\166\147\042\040\150\145\151\147\150\164\075\042\061\066" + "\042\040\167\151\144\164\150\075\042\061\066\042\076\074\160\141" + "\164\150\040\144\075\042\115\062\040\071\056\071\071\071\141\061" + "\040\061\040\060\040\060\040\060\040\061\056\067\060\070\056\067" + "\060\071\114\070\040\066\056\064\061\065\154\064\056\062\071\063" + "\040\064\056\062\071\063\141\061\040\061\040\060\040\061\040\060" + "\040\061\056\064\061\064\055\061\056\064\061\066\154\055\065\055" + "\065\141\061\040\061\040\060\040\060\040\060\055\061\056\064\061" + "\064\040\060\154\055\065\040\065\101\061\040\061\040\060\040\060" + "\040\060\040\062\040\071\056\071\071\071\132\042\040\163\164\171" + "\154\145\075\042\146\151\154\154\072\043\062\145\063\064\063\066" + "\073\146\151\154\154\055\157\160\141\143\151\164\171\072\061\042" + "\057\076\074\057\163\166\147\076\012\000\000\050\165\165\141\171" + "\051\165\151\057\016\000\000\000\017\000\000\000\031\000\000\000" + "\007\000\000\000\046\000\000\000\051\000\000\000\021\000\000\000" + "\026\000\000\000\001\000\000\000\027\000\000\000\004\000\000\000" + "\053\000\000\000\042\000\000\000\011\000\000\000\047\000\000\000" + "\010\000\000\000\043\000\000\000\000\000\000\000\020\000\000\000" + "\022\000\000\000\032\000\000\000\024\000\000\000\033\000\000\000" + "\023\000\000\000\052\000\000\000\015\000\000\000\141\144\167\055" + "\160\162\145\146\145\162\145\156\143\145\163\055\160\141\147\145" + "\056\165\151\000\000\000\000\000\204\003\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\120\162\145" + "\146\145\162\145\156\143\145\163\120\141\147\145\042\040\160\141" + "\162\145\156\164\075\042\107\164\153\127\151\144\147\145\164\042" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\123\143\162\157\154\154" + "\145\144\127\151\156\144\157\167\042\040\151\144\075\042\163\143" + "\162\157\154\154\145\144\137\167\151\156\144\157\167\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150" + "\163\143\162\157\154\154\142\141\162\055\160\157\154\151\143\171" + "\042\076\156\145\166\145\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\160\162\157\160\141\147\141\164\145\055\156\141\164\165" + "\162\141\154\055\150\145\151\147\150\164\042\076\124\162\165\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\101\144\167\103\154\141\155\160\042\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144" + "\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\102\157\170\042\040\151\144\075\042\142\157\170" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\157\162\151\145\156\164\141\164\151\157\156\042\076\166" + "\145\162\164\151\143\141\154\074\057\160\162\157\160\145\162\164" + "\171\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\114\141\142\145\154" + "\042\040\151\144\075\042\144\145\163\143\162\151\160\164\151\157" + "\156\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\166\151\163\151\142\154\145\042\076\106\141\154\163" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\165\163\145\055" + "\155\141\162\153\165\160\042\076\124\162\165\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\167\162\141\160\042\076\124\162\165" + "\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\167\162\141\160" + "\055\155\157\144\145\042\076\167\157\162\144\055\143\150\141\162" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\170\141\154\151\147" + "\156\042\076\060\074\057\160\162\157\160\145\162\164\171\076\074" + "\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155" + "\145\075\042\144\151\155\055\154\141\142\145\154\042\057\076\074" + "\143\154\141\163\163\040\156\141\155\145\075\042\144\145\163\143" + "\162\151\160\164\151\157\156\042\057\076\074\057\163\164\171\154" + "\145\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162" + "\157\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076" + "\074\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152" + "\145\143\164\076\074\057\143\150\151\154\144\076\074\057\164\145" + "\155\160\154\141\164\145\076\074\057\151\156\164\145\162\146\141" + "\143\145\076\012\000\000\050\165\165\141\171\051\141\144\167\055" + "\164\141\142\055\142\141\162\056\165\151\000\000\000\000\000\000" + "\236\011\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\053\042\040\166\145\162\163\151\157\156\075\042\063\056\062\064" + "\042\057\076\074\164\145\155\160\154\141\164\145\040\143\154\141" + "\163\163\075\042\101\144\167\124\141\142\102\141\162\042\040\160" + "\141\162\145\156\164\075\042\107\164\153\127\151\144\147\145\164" + "\042\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\122\145\166\145\141" + "\154\145\162\042\040\151\144\075\042\162\145\166\145\141\154\145" + "\162\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\164\162\141\156\163\151\164\151\157\156\055\144\165" + "\162\141\164\151\157\156\042\076\062\060\060\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\164\162\141\156\163\151\164\151\157\156" + "\055\164\171\160\145\042\076\163\154\151\144\145\055\144\157\167" + "\156\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154" + "\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\102\157\170\042\076\074\163\164\171\154\145" + "\076\074\143\154\141\163\163\040\156\141\155\145\075\042\142\157" + "\170\042\057\076\074\057\163\164\171\154\145\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\102\151\156\042\040\151\144\075\042\163\164" + "\141\162\164\137\141\143\164\151\157\156\137\142\151\156\042\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\163\164\171\154\145\076" + "\074\143\154\141\163\163\040\156\141\155\145\075\042\163\164\141" + "\162\164\055\141\143\164\151\157\156\042\057\076\074\057\163\164" + "\171\154\145\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123\143" + "\162\157\154\154\145\144\127\151\156\144\157\167\042\040\151\144" + "\075\042\160\151\156\156\145\144\137\163\143\162\157\154\154\145" + "\144\137\167\151\156\144\157\167\042\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\150\163\143\162\157\154" + "\154\142\141\162\055\160\157\154\151\143\171\042\076\145\170\164" + "\145\162\156\141\154\074\057\160\162\157\160\145\162\164\171\076" + "\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042" + "\166\163\143\162\157\154\154\142\141\162\055\160\157\154\151\143" + "\171\042\076\156\145\166\145\162\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\157\166\145\162\154\141\171\055\163\143\162\157\154" + "\154\151\156\147\042\076\106\141\154\163\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\160\162\157\160\141\147\141\164\145\055" + "\156\141\164\165\162\141\154\055\167\151\144\164\150\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150\145" + "\170\160\141\156\144\042\076\106\141\154\163\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\163\164\171\154\145\076\074\143" + "\154\141\163\163\040\156\141\155\145\075\042\160\151\156\156\145" + "\144\042\057\076\074\057\163\164\171\154\145\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\143\150\151\154" + "\144\042\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\101\144\167\124\141\142\102\157\170\042\040\151\144\075" + "\042\160\151\156\156\145\144\137\142\157\170\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\160\151\156" + "\156\145\144\042\076\124\162\165\145\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\164\141\142\055\142\141\162\042\076\101\144\167" + "\124\141\142\102\141\162\074\057\160\162\157\160\145\162\164\171" + "\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042\156" + "\157\164\151\146\171\072\072\162\145\163\151\172\145\055\146\162" + "\157\172\145\156\042\040\150\141\156\144\154\145\162\075\042\156" + "\157\164\151\146\171\137\162\145\163\151\172\145\137\146\162\157" + "\172\145\156\137\143\142\042\040\163\167\141\160\160\145\144\075" + "\042\164\162\165\145\042\057\076\074\163\151\147\156\141\154\040" + "\156\141\155\145\075\042\163\164\157\160\055\153\151\156\145\164" + "\151\143\055\163\143\162\157\154\154\151\156\147\042\040\150\141" + "\156\144\154\145\162\075\042\163\164\157\160\137\153\151\156\145" + "\164\151\143\137\163\143\162\157\154\154\151\156\147\137\143\142" + "\042\040\157\142\152\145\143\164\075\042\160\151\156\156\145\144" + "\137\163\143\162\157\154\154\145\144\137\167\151\156\144\157\167" + "\042\040\163\167\141\160\160\145\144\075\042\164\162\165\145\042" + "\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\145\170\164\162\141\055\144\162\141\147\055\144\162\157\160\042" + "\040\150\141\156\144\154\145\162\075\042\145\170\164\162\141\137" + "\144\162\141\147\137\144\162\157\160\137\143\142\042\040\163\167" + "\141\160\160\145\144\075\042\164\162\165\145\042\057\076\074\163" + "\151\147\156\141\154\040\156\141\155\145\075\042\145\170\164\162" + "\141\055\144\162\141\147\055\166\141\154\165\145\042\040\150\141" + "\156\144\154\145\162\075\042\145\170\164\162\141\137\144\162\141" + "\147\137\166\141\154\165\145\137\143\142\042\040\163\167\141\160" + "\160\145\144\075\042\164\162\165\145\042\057\076\074\057\157\142" + "\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\123\143\162\157\154\154" + "\145\144\127\151\156\144\157\167\042\040\151\144\075\042\163\143" + "\162\157\154\154\145\144\137\167\151\156\144\157\167\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150" + "\163\143\162\157\154\154\142\141\162\055\160\157\154\151\143\171" + "\042\076\145\170\164\145\162\156\141\154\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\166\163\143\162\157\154\154\142\141\162\055" + "\160\157\154\151\143\171\042\076\156\145\166\145\162\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\157\166\145\162\154\141\171\055" + "\163\143\162\157\154\154\151\156\147\042\076\106\141\154\163\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\150\145\170\160\141" + "\156\144\042\076\124\162\165\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\155\151\156\055\143\157\156\164\145\156\164\055\167" + "\151\144\164\150\042\076\061\060\060\074\057\160\162\157\160\145" + "\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\124\141\142" + "\102\157\170\042\040\151\144\075\042\142\157\170\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\164\141" + "\142\055\142\141\162\042\076\101\144\167\124\141\142\102\141\162" + "\074\057\160\162\157\160\145\162\164\171\076\074\163\151\147\156" + "\141\154\040\156\141\155\145\075\042\156\157\164\151\146\171\072" + "\072\162\145\163\151\172\145\055\146\162\157\172\145\156\042\040" + "\150\141\156\144\154\145\162\075\042\156\157\164\151\146\171\137" + "\162\145\163\151\172\145\137\146\162\157\172\145\156\137\143\142" + "\042\040\163\167\141\160\160\145\144\075\042\164\162\165\145\042" + "\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\163\164\157\160\055\153\151\156\145\164\151\143\055\163\143\162" + "\157\154\154\151\156\147\042\040\150\141\156\144\154\145\162\075" + "\042\163\164\157\160\137\153\151\156\145\164\151\143\137\163\143" + "\162\157\154\154\151\156\147\137\143\142\042\040\157\142\152\145" + "\143\164\075\042\163\143\162\157\154\154\145\144\137\167\151\156" + "\144\157\167\042\040\163\167\141\160\160\145\144\075\042\164\162" + "\165\145\042\057\076\074\163\151\147\156\141\154\040\156\141\155" + "\145\075\042\145\170\164\162\141\055\144\162\141\147\055\144\162" + "\157\160\042\040\150\141\156\144\154\145\162\075\042\145\170\164" + "\162\141\137\144\162\141\147\137\144\162\157\160\137\143\142\042" + "\040\163\167\141\160\160\145\144\075\042\164\162\165\145\042\057" + "\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042\145" + "\170\164\162\141\055\144\162\141\147\055\166\141\154\165\145\042" + "\040\150\141\156\144\154\145\162\075\042\145\170\164\162\141\137" + "\144\162\141\147\137\166\141\154\165\145\137\143\142\042\040\163" + "\167\141\160\160\145\144\075\042\164\162\165\145\042\057\076\074" + "\057\157\142\152\145\143\164\076\074\057\160\162\157\160\145\162" + "\164\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145" + "\143\164\040\143\154\141\163\163\075\042\101\144\167\102\151\156" + "\042\040\151\144\075\042\145\156\144\137\141\143\164\151\157\156" + "\137\142\151\156\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\166\151\163\151\142\154\145\042\076\106" + "\141\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\163\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155" + "\145\075\042\145\156\144\055\141\143\164\151\157\156\042\057\076" + "\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143" + "\164\076\074\057\160\162\157\160\145\162\164\171\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057" + "\164\145\155\160\154\141\164\145\076\074\057\151\156\164\145\162" + "\146\141\143\145\076\012\000\000\050\165\165\141\171\051\141\144" + "\167\055\145\156\164\162\171\055\141\160\160\154\171\055\163\171" + "\155\142\157\154\151\143\056\163\166\147\000\000\000\000\000\000" + "\261\005\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\040\163\164\141" + "\156\144\141\154\157\156\145\075\042\156\157\042\077\076\012\074" + "\163\166\147\040\170\155\154\156\163\072\151\156\153\163\143\141" + "\160\145\075\042\150\164\164\160\072\057\057\167\167\167\056\151" + "\156\153\163\143\141\160\145\056\157\162\147\057\156\141\155\145" + "\163\160\141\143\145\163\057\151\156\153\163\143\141\160\145\042" + "\040\170\155\154\156\163\072\163\157\144\151\160\157\144\151\075" + "\042\150\164\164\160\072\057\057\163\157\144\151\160\157\144\151" + "\056\163\157\165\162\143\145\146\157\162\147\145\056\156\145\164" + "\057\104\124\104\057\163\157\144\151\160\157\144\151\055\060\056" + "\144\164\144\042\040\170\155\154\156\163\075\042\150\164\164\160" + "\072\057\057\167\167\167\056\167\063\056\157\162\147\057\062\060" + "\060\060\057\163\166\147\042\040\170\155\154\156\163\072\163\166" + "\147\075\042\150\164\164\160\072\057\057\167\167\167\056\167\063" + "\056\157\162\147\057\062\060\060\060\057\163\166\147\042\040\150" + "\145\151\147\150\164\075\042\061\066\160\170\042\040\166\151\145" + "\167\102\157\170\075\042\060\040\060\040\061\066\040\061\066\042" + "\040\167\151\144\164\150\075\042\061\066\160\170\042\040\163\157" + "\144\151\160\157\144\151\072\144\157\143\156\141\155\145\075\042" + "\141\144\167\055\145\156\164\162\171\055\141\160\160\154\171\055" + "\163\171\155\142\157\154\151\143\056\163\166\147\042\040\151\156" + "\153\163\143\141\160\145\072\166\145\162\163\151\157\156\075\042" + "\061\056\061\056\062\040\050\060\141\060\060\143\146\065\063\063" + "\071\054\040\062\060\062\062\055\060\062\055\060\064\051\042\040" + "\166\145\162\163\151\157\156\075\042\061\056\061\042\040\151\144" + "\075\042\163\166\147\066\042\076\074\144\145\146\163\040\151\144" + "\075\042\144\145\146\163\070\042\057\076\074\163\157\144\151\160" + "\157\144\151\072\156\141\155\145\144\166\151\145\167\040\160\141" + "\147\145\143\157\154\157\162\075\042\043\146\146\146\146\146\146" + "\042\040\142\157\162\144\145\162\143\157\154\157\162\075\042\043" + "\066\066\066\066\066\066\042\040\142\157\162\144\145\162\157\160" + "\141\143\151\164\171\075\042\061\056\060\042\040\151\156\153\163" + "\143\141\160\145\072\160\141\147\145\163\150\141\144\157\167\075" + "\042\062\042\040\151\156\153\163\143\141\160\145\072\160\141\147" + "\145\157\160\141\143\151\164\171\075\042\060\056\060\042\040\151" + "\156\153\163\143\141\160\145\072\160\141\147\145\143\150\145\143" + "\153\145\162\142\157\141\162\144\075\042\060\042\040\163\150\157" + "\167\147\162\151\144\075\042\164\162\165\145\042\040\151\156\153" + "\163\143\141\160\145\072\172\157\157\155\075\042\061\062\056\061" + "\062\065\042\040\151\156\153\163\143\141\160\145\072\143\170\075" + "\042\061\060\056\071\062\067\070\063\065\042\040\151\156\153\163" + "\143\141\160\145\072\143\171\075\042\055\065\056\070\065\065\066" + "\067\060\061\042\040\151\156\153\163\143\141\160\145\072\167\151" + "\156\144\157\167\055\167\151\144\164\150\075\042\061\071\062\060" + "\042\040\151\156\153\163\143\141\160\145\072\167\151\156\144\157" + "\167\055\150\145\151\147\150\164\075\042\061\060\061\061\042\040" + "\151\156\153\163\143\141\160\145\072\167\151\156\144\157\167\055" + "\170\075\042\060\042\040\151\156\153\163\143\141\160\145\072\167" + "\151\156\144\157\167\055\171\075\042\060\042\040\151\156\153\163" + "\143\141\160\145\072\167\151\156\144\157\167\055\155\141\170\151" + "\155\151\172\145\144\075\042\061\042\040\151\156\153\163\143\141" + "\160\145\072\143\165\162\162\145\156\164\055\154\141\171\145\162" + "\075\042\163\166\147\066\042\040\151\144\075\042\156\141\155\145" + "\144\166\151\145\167\062\042\040\151\156\153\163\143\141\160\145" + "\072\157\142\152\145\143\164\055\160\141\164\150\163\075\042\164" + "\162\165\145\042\040\151\156\153\163\143\141\160\145\072\163\156" + "\141\160\055\151\156\164\145\162\163\145\143\164\151\157\156\055" + "\160\141\164\150\163\075\042\164\162\165\145\042\040\151\156\153" + "\163\143\141\160\145\072\163\156\141\160\055\163\155\157\157\164" + "\150\055\156\157\144\145\163\075\042\164\162\165\145\042\076\074" + "\151\156\153\163\143\141\160\145\072\147\162\151\144\040\164\171" + "\160\145\075\042\170\171\147\162\151\144\042\040\151\144\075\042" + "\147\162\151\144\071\071\061\042\057\076\074\057\163\157\144\151" + "\160\157\144\151\072\156\141\155\145\144\166\151\145\167\076\074" + "\160\141\164\150\040\163\164\171\154\145\075\042\143\157\154\157" + "\162\072\043\060\060\060\060\060\060\073\146\151\154\154\072\043" + "\062\145\063\064\063\066\073\163\164\162\157\153\145\055\154\151" + "\156\145\143\141\160\072\162\157\165\156\144\073\163\164\162\157" + "\153\145\055\154\151\156\145\152\157\151\156\072\162\157\165\156" + "\144\073\055\151\156\153\163\143\141\160\145\055\163\164\162\157" + "\153\145\072\156\157\156\145\073\146\151\154\154\055\157\160\141" + "\143\151\164\171\072\061\042\040\144\075\042\155\040\061\063\056" + "\071\070\070\062\070\061\054\062\056\070\067\061\060\071\063\070" + "\040\141\040\061\056\065\054\061\056\065\040\060\040\060\040\060" + "\040\055\062\056\061\061\067\061\070\067\054\060\056\061\064\060" + "\066\062\065\040\114\040\065\056\071\062\065\067\070\061\062\054" + "\071\056\070\060\064\066\070\067\065\040\064\056\060\066\060\065" + "\064\066\071\054\067\056\071\063\071\064\065\063\061\040\141\040" + "\061\056\065\054\061\056\065\040\060\040\060\040\060\040\055\062" + "\056\061\062\061\060\071\063\070\054\060\040\061\056\065\054\061" + "\056\065\040\060\040\060\040\060\040\060\054\062\056\061\062\061" + "\060\071\063\071\040\154\040\063\054\063\040\141\040\061\056\065" + "\060\060\061\065\054\061\056\065\060\060\061\065\040\060\040\060" + "\040\060\040\062\056\061\070\071\064\065\063\061\054\055\060\056" + "\060\067\062\062\067\040\114\040\061\064\056\061\062\070\071\060" + "\066\054\064\056\071\070\070\062\070\061\062\040\101\040\061\056" + "\065\054\061\056\065\040\060\040\060\040\060\040\061\063\056\071" + "\070\070\062\070\061\054\062\056\070\067\061\060\071\063\070\040" + "\132\042\040\151\144\075\042\160\141\164\150\061\061\062\067\042" + "\057\076\074\057\163\166\147\076\012\000\000\050\165\165\141\171" + "\051\163\164\141\164\165\163\057\006\000\000\000\025\000\000\000" + "\005\000\000\000\030\000\000\000\012\000\000\000\141\144\167\055" + "\142\141\156\156\145\162\056\165\151\000\000\000\000\000\000\000" + "\362\004\000\000\000\000\000\000\074\077\170\155\154\040\166\145" + "\162\163\151\157\156\075\042\061\056\060\042\040\145\156\143\157" + "\144\151\156\147\075\042\125\124\106\055\070\042\077\076\012\074" + "\151\156\164\145\162\146\141\143\145\040\144\157\155\141\151\156" + "\075\042\154\151\142\141\144\167\141\151\164\141\042\076\074\162" + "\145\161\165\151\162\145\163\040\154\151\142\075\042\147\164\153" + "\042\040\166\145\162\163\151\157\156\075\042\064\056\060\042\057" + "\076\074\164\145\155\160\154\141\164\145\040\143\154\141\163\163" + "\075\042\101\144\167\102\141\156\156\145\162\042\040\160\141\162" + "\145\156\164\075\042\107\164\153\127\151\144\147\145\164\042\076" + "\074\141\143\143\145\163\163\151\142\151\154\151\164\171\076\074" + "\162\145\154\141\164\151\157\156\040\156\141\155\145\075\042\154" + "\141\142\145\154\154\145\144\055\142\171\042\076\164\151\164\154" + "\145\074\057\162\145\154\141\164\151\157\156\076\074\057\141\143" + "\143\145\163\163\151\142\151\154\151\164\171\076\074\143\150\151" + "\154\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163" + "\075\042\107\164\153\122\145\166\145\141\154\145\162\042\040\151" + "\144\075\042\162\145\166\145\141\154\145\162\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\162\141" + "\156\163\151\164\151\157\156\055\164\171\160\145\042\076\163\154" + "\151\144\145\055\144\157\167\156\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\143\150\151\154\144\042\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\107\151\172\155" + "\157\042\040\151\144\075\042\147\151\172\155\157\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\150\145" + "\170\160\141\156\144\042\076\124\162\165\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\114" + "\141\142\145\154\042\040\151\144\075\042\164\151\164\154\145\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\150\145\170\160\141\156\144\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\152\165\163\164\151\146\171" + "\042\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\145\154\154\151\160\163\151\172\145\042\076\145\156" + "\144\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\154\151\156\145" + "\163\042\076\063\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\165" + "\163\145\055\165\156\144\145\162\154\151\156\145\042\076\106\141" + "\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\163\145" + "\154\145\143\164\141\142\154\145\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\167\162\141\160\042\076" + "\124\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\167" + "\162\141\160\055\155\157\144\145\042\076\167\157\162\144\055\143" + "\150\141\162\074\057\160\162\157\160\145\162\164\171\076\074\163" + "\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155\145" + "\075\042\150\145\141\144\151\156\147\042\057\076\074\057\163\164" + "\171\154\145\076\074\057\157\142\152\145\143\164\076\074\057\143" + "\150\151\154\144\076\074\143\150\151\154\144\076\074\157\142\152" + "\145\143\164\040\143\154\141\163\163\075\042\107\164\153\102\165" + "\164\164\157\156\042\040\151\144\075\042\142\165\164\164\157\156" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\166\141\154\151\147\156\042\076\143\145\156\164\145\162" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\146\157\143\165\163" + "\055\157\156\055\143\154\151\143\153\042\076\106\141\154\163\145" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\165\163\145\055\165" + "\156\144\145\162\154\151\156\145\042\076\124\162\165\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\166\151\163\151\142\154\145" + "\042\076\106\141\154\163\145\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\143\141\156\055\163\150\162\151\156\153\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\163\151" + "\147\156\141\154\040\156\141\155\145\075\042\143\154\151\143\153" + "\145\144\042\040\150\141\156\144\154\145\162\075\042\142\165\164" + "\164\157\156\137\143\154\151\143\153\145\144\042\040\163\167\141" + "\160\160\145\144\075\042\171\145\163\042\057\076\074\057\157\142" + "\152\145\143\164\076\074\057\143\150\151\154\144\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\164\145\155\160\154\141\164\145\076\074\057\151" + "\156\164\145\162\146\141\143\145\076\012\000\000\050\165\165\141" + "\171\051\141\144\167\055\163\160\151\156\055\162\157\167\056\165" + "\151\000\000\000\000\000\000\000\044\004\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\123\160\151" + "\156\122\157\167\042\040\160\141\162\145\156\164\075\042\101\144" + "\167\101\143\164\151\157\156\122\157\167\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\141\143\164\151" + "\166\141\164\141\142\154\145\042\076\124\162\165\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\143\150\151\154\144\040\164" + "\171\160\145\075\042\163\165\146\146\151\170\042\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123" + "\160\151\156\102\165\164\164\157\156\042\040\151\144\075\042\163" + "\160\151\156\137\142\165\164\164\157\156\042\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\141\154\151" + "\147\156\042\076\143\145\156\164\145\162\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\150\145\170\160\141\156\144\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\170\141\154" + "\151\147\156\042\076\061\074\057\160\162\157\160\145\162\164\171" + "\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042\163" + "\164\141\164\145\055\146\154\141\147\163\055\143\150\141\156\147" + "\145\144\042\040\150\141\156\144\154\145\162\075\042\163\160\151" + "\156\137\142\165\164\164\157\156\137\163\164\141\164\145\137\146" + "\154\141\147\163\137\143\150\141\156\147\145\144\137\143\142\042" + "\040\163\167\141\160\160\145\144\075\042\171\145\163\042\057\076" + "\074\163\151\147\156\141\154\040\156\141\155\145\075\042\153\145" + "\171\156\141\166\055\146\141\151\154\145\144\042\040\150\141\156" + "\144\154\145\162\075\042\163\160\151\156\137\142\165\164\164\157" + "\156\137\153\145\171\156\141\166\137\146\141\151\154\145\144\137" + "\143\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075" + "\042\151\156\160\165\164\042\040\150\141\156\144\154\145\162\075" + "\042\163\160\151\156\137\142\165\164\164\157\156\137\151\156\160" + "\165\164\137\143\142\042\040\163\167\141\160\160\145\144\075\042" + "\171\145\163\042\057\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\157\165\164\160\165\164\042\040\150\141\156\144" + "\154\145\162\075\042\163\160\151\156\137\142\165\164\164\157\156" + "\137\157\165\164\160\165\164\137\143\142\042\040\163\167\141\160" + "\160\145\144\075\042\171\145\163\042\057\076\074\163\151\147\156" + "\141\154\040\156\141\155\145\075\042\167\162\141\160\160\145\144" + "\042\040\150\141\156\144\154\145\162\075\042\163\160\151\156\137" + "\142\165\164\164\157\156\137\167\162\141\160\160\145\144\137\143" + "\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163\042" + "\057\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\156\157\164\151\146\171\072\072\166\141\154\165\145\042\040\150" + "\141\156\144\154\145\162\075\042\163\160\151\156\137\142\165\164" + "\164\157\156\137\156\157\164\151\146\171\137\166\141\154\165\145" + "\137\143\142\042\040\163\167\141\160\160\145\144\075\042\171\145" + "\163\042\057\076\074\141\143\143\145\163\163\151\142\151\154\151" + "\164\171\076\074\162\145\154\141\164\151\157\156\040\156\141\155" + "\145\075\042\154\141\142\145\154\154\145\144\055\142\171\042\076" + "\101\144\167\123\160\151\156\122\157\167\074\057\162\145\154\141" + "\164\151\157\156\076\074\162\145\154\141\164\151\157\156\040\156" + "\141\155\145\075\042\144\145\163\143\162\151\142\145\144\055\142" + "\171\042\076\101\144\167\123\160\151\156\122\157\167\074\057\162" + "\145\154\141\164\151\157\156\076\074\057\141\143\143\145\163\163" + "\151\142\151\154\151\164\171\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\163\164\171\154\145\076" + "\074\143\154\141\163\163\040\156\141\155\145\075\042\163\160\151" + "\156\042\057\076\074\057\163\164\171\154\145\076\074\057\164\145" + "\155\160\154\141\164\145\076\074\057\151\156\164\145\162\146\141" + "\143\145\076\012\000\000\050\165\165\141\171\051\057\000\000\000" + "\037\000\000\000\141\144\167\055\143\157\155\142\157\055\162\157" + "\167\056\165\151\000\000\000\000\300\010\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\103\157\155" + "\142\157\122\157\167\042\040\160\141\162\145\156\164\075\042\101" + "\144\167\101\143\164\151\157\156\122\157\167\042\076\074\163\164" + "\171\154\145\076\074\143\154\141\163\163\040\156\141\155\145\075" + "\042\143\157\155\142\157\042\057\076\074\057\163\164\171\154\145" + "\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040" + "\143\154\141\163\163\075\042\107\164\153\114\151\163\164\126\151" + "\145\167\042\040\151\144\075\042\143\165\162\162\145\156\164\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\151\163\151\142\154\145\042\040\142\151\156\144\055\163" + "\157\165\162\143\145\075\042\101\144\167\103\157\155\142\157\122" + "\157\167\042\040\142\151\156\144\055\160\162\157\160\145\162\164" + "\171\075\042\165\163\145\055\163\165\142\164\151\164\154\145\042" + "\040\142\151\156\144\055\146\154\141\147\163\075\042\163\171\156" + "\143\055\143\162\145\141\164\145\174\151\156\166\145\162\164\055" + "\142\157\157\154\145\141\156\042\057\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\166\141\154\151\147\156" + "\042\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\143\141\156\055\146\157\143\165\163\042\076\106\141" + "\154\163\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\143\141" + "\156\055\164\141\162\147\145\164\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\163\164\171\154\145" + "\076\074\143\154\141\163\163\040\156\141\155\145\075\042\151\156" + "\154\151\156\145\042\057\076\074\057\163\164\171\154\145\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\102\157\170\042\040\151\144" + "\075\042\141\162\162\157\167\137\142\157\170\042\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\166\141\154" + "\151\147\156\042\076\143\145\156\164\145\162\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\111" + "\155\141\147\145\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\151\143\157\156\137\156\141\155\145\042" + "\076\160\141\156\055\144\157\167\156\055\163\171\155\142\157\154" + "\151\143\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\141\143\143" + "\145\163\163\151\142\154\145\055\162\157\154\145\042\076\160\162" + "\145\163\145\156\164\141\164\151\157\156\074\057\160\162\157\160" + "\145\162\164\171\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\144\162\157\160\144\157\167" + "\156\055\141\162\162\157\167\042\057\076\074\057\163\164\171\154" + "\145\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\107\164\153\120\157\160\157" + "\166\145\162\042\040\151\144\075\042\160\157\160\157\166\145\162" + "\042\076\074\163\151\147\156\141\154\040\156\141\155\145\075\042" + "\156\157\164\151\146\171\072\072\166\151\163\151\142\154\145\042" + "\040\150\141\156\144\154\145\162\075\042\156\157\164\151\146\171" + "\137\160\157\160\157\166\145\162\137\166\151\163\151\142\154\145" + "\137\143\142\042\040\163\167\141\160\160\145\144\075\042\164\162" + "\165\145\042\057\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\155\145\156\165\042\057\076" + "\074\057\163\164\171\154\145\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\143\150\151\154\144\042\076\074" + "\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164" + "\153\102\157\170\042\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\157\162\151\145\156\164\141\164\151\157" + "\156\042\076\166\145\162\164\151\143\141\154\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\123" + "\145\141\162\143\150\105\156\164\162\171\042\040\151\144\075\042" + "\163\145\141\162\143\150\137\145\156\164\162\171\042\076\074\163" + "\164\171\154\145\076\074\143\154\141\163\163\040\156\141\155\145" + "\075\042\143\157\155\142\157\055\163\145\141\162\143\150\142\141" + "\162\042\057\076\074\057\163\164\171\154\145\076\074\163\151\147" + "\156\141\154\040\156\141\155\145\075\042\163\145\141\162\143\150" + "\055\143\150\141\156\147\145\144\042\040\150\141\156\144\154\145" + "\162\075\042\163\145\141\162\143\150\137\143\150\141\156\147\145" + "\144\137\143\142\042\057\076\074\163\151\147\156\141\154\040\156" + "\141\155\145\075\042\163\164\157\160\055\163\145\141\162\143\150" + "\042\040\150\141\156\144\154\145\162\075\042\163\145\141\162\143" + "\150\137\163\164\157\160\137\143\142\042\057\076\074\160\162\157" + "\160\145\162\164\171\040\156\141\155\145\075\042\166\151\163\151" + "\142\154\145\042\076\106\141\154\163\145\074\057\160\162\157\160" + "\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\155\141\170\055\167\151\144\164\150\055\143" + "\150\141\162\163\042\076\066\074\057\160\162\157\160\145\162\164" + "\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\167\151\144\164\150\055\143\150\141\162\163\042\076\066" + "\074\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160" + "\145\162\164\171\040\156\141\155\145\075\042\160\154\141\143\145" + "\150\157\154\144\145\162\055\164\145\170\164\042\040\164\162\141" + "\156\163\154\141\164\141\142\154\145\075\042\171\145\163\042\040" + "\143\157\155\155\145\156\164\163\075\042\124\162\141\156\163\154" + "\141\164\157\162\163\072\040\124\150\151\163\040\151\163\040\141" + "\040\160\154\141\143\145\150\157\154\144\145\162\040\164\145\170" + "\164\040\157\146\040\164\150\145\040\163\145\141\162\143\150\040" + "\145\156\164\162\171\040\146\162\157\155\040\101\144\167\103\157" + "\155\142\157\122\157\167\056\040\111\164\040\163\150\157\165\154" + "\144\040\142\145\040\160\150\162\141\163\145\144\040\141\163\040" + "\141\040\166\145\162\142\056\042\076\123\145\141\162\143\150\074" + "\057\160\162\157\160\145\162\164\171\076\074\057\157\142\152\145" + "\143\164\076\074\057\143\150\151\154\144\076\074\143\150\151\154" + "\144\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075" + "\042\107\164\153\123\143\162\157\154\154\145\144\127\151\156\144" + "\157\167\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\150\163\143\162\157\154\154\142\141\162\137\160" + "\157\154\151\143\171\042\076\156\145\166\145\162\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\155\141\170\137\143\157\156\164\145" + "\156\164\137\150\145\151\147\150\164\042\076\064\060\060\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\160\162\157\160\141\147\141" + "\164\145\137\156\141\164\165\162\141\154\137\167\151\144\164\150" + "\042\076\124\162\165\145\074\057\160\162\157\160\145\162\164\171" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\160\162\157\160\141\147\141\164\145\137\156\141\164\165\162" + "\141\154\137\150\145\151\147\150\164\042\076\124\162\165\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\143\150\151\154\144\042" + "\076\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042" + "\107\164\153\114\151\163\164\126\151\145\167\042\040\151\144\075" + "\042\154\151\163\164\042\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\163\151\156\147\154\145\055\143\154" + "\151\143\153\055\141\143\164\151\166\141\164\145\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\164\141\142" + "\055\142\145\150\141\166\151\157\162\042\076\151\164\145\155\074" + "\057\160\162\157\160\145\162\164\171\076\074\163\151\147\156\141" + "\154\040\156\141\155\145\075\042\141\143\164\151\166\141\164\145" + "\042\040\150\141\156\144\154\145\162\075\042\162\157\167\137\141" + "\143\164\151\166\141\164\145\144\137\143\142\042\040\163\167\141" + "\160\160\145\144\075\042\164\162\165\145\042\057\076\074\057\157" + "\142\152\145\143\164\076\074\057\160\162\157\160\145\162\164\171" + "\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154" + "\144\076\074\057\157\142\152\145\143\164\076\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164\076" + "\074\057\143\150\151\154\144\076\074\057\164\145\155\160\154\141" + "\164\145\076\074\057\151\156\164\145\162\146\141\143\145\076\012" + "\000\000\050\165\165\141\171\051\141\144\167\055\166\151\145\167" + "\055\163\167\151\164\143\150\145\162\055\164\151\164\154\145\056" + "\165\151\000\000\000\000\000\000\121\003\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\126\151\145" + "\167\123\167\151\164\143\150\145\162\124\151\164\154\145\042\040" + "\160\141\162\145\156\164\075\042\107\164\153\127\151\144\147\145" + "\164\042\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\123\161\165\145" + "\145\172\145\162\042\040\151\144\075\042\163\161\165\145\145\172" + "\145\162\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\164\162\141\156\163\151\164\151\157\156\055\164" + "\171\160\145\042\076\143\162\157\163\163\146\141\144\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\163\167\151\164\143\150\055" + "\164\150\162\145\163\150\157\154\144\055\160\157\154\151\143\171" + "\042\076\156\141\164\165\162\141\154\074\057\160\162\157\160\145" + "\162\164\171\076\074\163\151\147\156\141\154\040\156\141\155\145" + "\075\042\156\157\164\151\146\171\072\072\166\151\163\151\142\154" + "\145\055\143\150\151\154\144\042\040\150\141\156\144\154\145\162" + "\075\042\156\157\164\151\146\171\137\163\161\165\145\145\172\145" + "\162\137\166\151\163\151\142\154\145\137\143\150\151\154\144\137" + "\143\142\042\040\163\167\141\160\160\145\144\075\042\171\145\163" + "\042\057\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\126\151\145\167" + "\123\167\151\164\143\150\145\162\042\040\151\144\075\042\167\151" + "\144\145\137\166\151\145\167\137\163\167\151\164\143\150\145\162" + "\042\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145" + "\075\042\160\157\154\151\143\171\042\076\167\151\144\145\074\057" + "\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\150\141\154\151\147\156\042" + "\076\143\145\156\164\145\162\074\057\160\162\157\160\145\162\164" + "\171\076\074\057\157\142\152\145\143\164\076\074\057\143\150\151" + "\154\144\076\074\143\150\151\154\144\076\074\157\142\152\145\143" + "\164\040\143\154\141\163\163\075\042\101\144\167\126\151\145\167" + "\123\167\151\164\143\150\145\162\042\040\151\144\075\042\156\141" + "\162\162\157\167\137\166\151\145\167\137\163\167\151\164\143\150" + "\145\162\042\076\074\160\162\157\160\145\162\164\171\040\156\141" + "\155\145\075\042\160\157\154\151\143\171\042\076\156\141\162\162" + "\157\167\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\150\141\154" + "\151\147\156\042\076\143\145\156\164\145\162\074\057\160\162\157" + "\160\145\162\164\171\076\074\057\157\142\152\145\143\164\076\074" + "\057\143\150\151\154\144\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\101\144\167" + "\127\151\156\144\157\167\124\151\164\154\145\042\040\151\144\075" + "\042\164\151\164\154\145\137\167\151\144\147\145\164\042\057\076" + "\074\057\143\150\151\154\144\076\074\057\157\142\152\145\143\164" + "\076\074\057\143\150\151\154\144\076\074\057\164\145\155\160\154" + "\141\164\145\076\074\057\151\156\164\145\162\146\141\143\145\076" + "\012\000\000\050\165\165\141\171\051\141\144\167\055\160\162\145" + "\146\145\162\145\156\143\145\163\055\147\162\157\165\160\056\165" + "\151\000\000\000\000\000\000\000\311\006\000\000\000\000\000\000" + "\074\077\170\155\154\040\166\145\162\163\151\157\156\075\042\061" + "\056\060\042\040\145\156\143\157\144\151\156\147\075\042\125\124" + "\106\055\070\042\077\076\012\074\151\156\164\145\162\146\141\143" + "\145\040\144\157\155\141\151\156\075\042\154\151\142\141\144\167" + "\141\151\164\141\042\076\074\162\145\161\165\151\162\145\163\040" + "\154\151\142\075\042\147\164\153\042\040\166\145\162\163\151\157" + "\156\075\042\064\056\060\042\057\076\074\164\145\155\160\154\141" + "\164\145\040\143\154\141\163\163\075\042\101\144\167\120\162\145" + "\146\145\162\145\156\143\145\163\107\162\157\165\160\042\040\160" + "\141\162\145\156\164\075\042\107\164\153\127\151\144\147\145\164" + "\042\076\074\143\150\151\154\144\076\074\157\142\152\145\143\164" + "\040\143\154\141\163\163\075\042\107\164\153\102\157\170\042\040" + "\151\144\075\042\142\157\170\042\076\074\160\162\157\160\145\162" + "\164\171\040\156\141\155\145\075\042\157\162\151\145\156\164\141" + "\164\151\157\156\042\076\166\145\162\164\151\143\141\154\074\057" + "\160\162\157\160\145\162\164\171\076\074\143\150\151\154\144\076" + "\074\157\142\152\145\143\164\040\143\154\141\163\163\075\042\107" + "\164\153\102\157\170\042\040\151\144\075\042\150\145\141\144\145" + "\162\137\142\157\170\042\076\074\143\150\151\154\144\076\074\157" + "\142\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153" + "\102\157\170\042\076\074\160\162\157\160\145\162\164\171\040\156" + "\141\155\145\075\042\150\145\170\160\141\156\144\042\076\124\162" + "\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160\162" + "\157\160\145\162\164\171\040\156\141\155\145\075\042\166\141\154" + "\151\147\156\042\076\143\145\156\164\145\162\074\057\160\162\157" + "\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171\040" + "\156\141\155\145\075\042\157\162\151\145\156\164\141\164\151\157" + "\156\042\076\166\145\162\164\151\143\141\154\074\057\160\162\157" + "\160\145\162\164\171\076\074\143\150\151\154\144\076\074\157\142" + "\152\145\143\164\040\143\154\141\163\163\075\042\107\164\153\114" + "\141\142\145\154\042\040\151\144\075\042\164\151\164\154\145\042" + "\076\074\160\162\157\160\145\162\164\171\040\156\141\155\145\075" + "\042\166\151\163\151\142\154\145\042\076\106\141\154\163\145\074" + "\057\160\162\157\160\145\162\164\171\076\074\160\162\157\160\145" + "\162\164\171\040\156\141\155\145\075\042\145\154\154\151\160\163" + "\151\172\145\042\076\145\156\144\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\165\163\145\055\155\141\162\153\165\160\042\076\124" + "\162\165\145\074\057\160\162\157\160\145\162\164\171\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\170\141" + "\154\151\147\156\042\076\060\074\057\160\162\157\160\145\162\164" + "\171\076\074\163\164\171\154\145\076\074\143\154\141\163\163\040" + "\156\141\155\145\075\042\150\145\141\144\151\156\147\042\057\076" + "\074\041\055\055\040\115\141\164\143\150\151\156\147\040\145\154" + "\145\155\145\156\164\141\162\171\040\143\154\141\163\163\056\040" + "\055\055\076\074\143\154\141\163\163\040\156\141\155\145\075\042" + "\150\064\042\057\076\074\057\163\164\171\154\145\076\074\057\157" + "\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074\143" + "\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154\141" + "\163\163\075\042\107\164\153\114\141\142\145\154\042\040\151\144" + "\075\042\144\145\163\143\162\151\160\164\151\157\156\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166" + "\151\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\165\163\145\055\155\141\162\153" + "\165\160\042\076\124\162\165\145\074\057\160\162\157\160\145\162" + "\164\171\076\074\160\162\157\160\145\162\164\171\040\156\141\155" + "\145\075\042\167\162\141\160\042\076\124\162\165\145\074\057\160" + "\162\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164" + "\171\040\156\141\155\145\075\042\167\162\141\160\055\155\157\144" + "\145\042\076\167\157\162\144\055\143\150\141\162\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\170\141\154\151\147\156\042\076\060" + "\074\057\160\162\157\160\145\162\164\171\076\074\163\164\171\154" + "\145\076\074\143\154\141\163\163\040\156\141\155\145\075\042\144" + "\151\155\055\154\141\142\145\154\042\057\076\074\057\163\164\171" + "\154\145\076\074\057\157\142\152\145\143\164\076\074\057\143\150" + "\151\154\144\076\074\163\164\171\154\145\076\074\143\154\141\163" + "\163\040\156\141\155\145\075\042\154\141\142\145\154\163\042\057" + "\076\074\057\163\164\171\154\145\076\074\057\157\142\152\145\143" + "\164\076\074\057\143\150\151\154\144\076\074\163\164\171\154\145" + "\076\074\143\154\141\163\163\040\156\141\155\145\075\042\150\145" + "\141\144\145\162\042\057\076\074\057\163\164\171\154\145\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143" + "\154\141\163\163\075\042\107\164\153\102\157\170\042\040\151\144" + "\075\042\154\151\163\164\142\157\170\137\142\157\170\042\076\074" + "\160\162\157\160\145\162\164\171\040\156\141\155\145\075\042\157" + "\162\151\145\156\164\141\164\151\157\156\042\076\166\145\162\164" + "\151\143\141\154\074\057\160\162\157\160\145\162\164\171\076\074" + "\143\150\151\154\144\076\074\157\142\152\145\143\164\040\143\154" + "\141\163\163\075\042\107\164\153\114\151\163\164\102\157\170\042" + "\040\151\144\075\042\154\151\163\164\142\157\170\042\076\074\160" + "\162\157\160\145\162\164\171\040\156\141\155\145\075\042\166\151" + "\163\151\142\154\145\042\076\106\141\154\163\145\074\057\160\162" + "\157\160\145\162\164\171\076\074\160\162\157\160\145\162\164\171" + "\040\156\141\155\145\075\042\163\145\154\145\143\164\151\157\156" + "\137\155\157\144\145\042\076\156\157\156\145\074\057\160\162\157" + "\160\145\162\164\171\076\074\141\143\143\145\163\163\151\142\151" + "\154\151\164\171\076\074\162\145\154\141\164\151\157\156\040\156" + "\141\155\145\075\042\154\141\142\145\154\154\145\144\055\142\171" + "\042\076\164\151\164\154\145\074\057\162\145\154\141\164\151\157" + "\156\076\074\162\145\154\141\164\151\157\156\040\156\141\155\145" + "\075\042\144\145\163\143\162\151\142\145\144\055\142\171\042\076" + "\144\145\163\143\162\151\160\164\151\157\156\074\057\162\145\154" + "\141\164\151\157\156\076\074\057\141\143\143\145\163\163\151\142" + "\151\154\151\164\171\076\074\163\151\147\156\141\154\040\156\141" + "\155\145\075\042\153\145\171\156\141\166\055\146\141\151\154\145" + "\144\042\040\150\141\156\144\154\145\162\075\042\154\151\163\164" + "\142\157\170\137\153\145\171\156\141\166\137\146\141\151\154\145" + "\144\137\143\142\042\040\163\167\141\160\160\145\144\075\042\171" + "\145\163\042\057\076\074\163\164\171\154\145\076\074\143\154\141" + "\163\163\040\156\141\155\145\075\042\142\157\170\145\144\055\154" + "\151\163\164\042\057\076\074\057\163\164\171\154\145\076\074\057" + "\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076\074" + "\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144\076" + "\074\057\157\142\152\145\143\164\076\074\057\143\150\151\154\144" + "\076\074\057\164\145\155\160\154\141\164\145\076\074\057\151\156" + "\164\145\162\146\141\143\145\076\012\000\000\050\165\165\141\171" + "\051" }; + +static GStaticResource static_resource = { adw_resource_data.data, sizeof (adw_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *adw_get_resource (void); +GResource *adw_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(adwresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(adwresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(adwresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(adwresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void adwresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void adwresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/libadwaita/adw-resources.h b/libadwaita/libadwaita/adw-resources.h new file mode 100644 index 0000000..58c6b5a --- /dev/null +++ b/libadwaita/libadwaita/adw-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_adw_H__ +#define __RESOURCE_adw_H__ + +#include + +G_GNUC_INTERNAL GResource *adw_get_resource (void); +#endif diff --git a/libadwaita/libadwaita/adw-settings-impl-gsettings.c b/libadwaita/libadwaita/adw-settings-impl-gsettings.c new file mode 120000 index 0000000..ed4df8c --- /dev/null +++ b/libadwaita/libadwaita/adw-settings-impl-gsettings.c @@ -0,0 +1 @@ +../../upstream/src/adw-settings-impl-gsettings.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-settings-impl-legacy.c b/libadwaita/libadwaita/adw-settings-impl-legacy.c new file mode 120000 index 0000000..2f73fa9 --- /dev/null +++ b/libadwaita/libadwaita/adw-settings-impl-legacy.c @@ -0,0 +1 @@ +../../upstream/src/adw-settings-impl-legacy.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-settings-impl-macos.c b/libadwaita/libadwaita/adw-settings-impl-macos.c new file mode 120000 index 0000000..c83d0f1 --- /dev/null +++ b/libadwaita/libadwaita/adw-settings-impl-macos.c @@ -0,0 +1 @@ +../../upstream/src/adw-settings-impl-macos.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-settings-impl-portal.c b/libadwaita/libadwaita/adw-settings-impl-portal.c new file mode 120000 index 0000000..8a8ee4f --- /dev/null +++ b/libadwaita/libadwaita/adw-settings-impl-portal.c @@ -0,0 +1 @@ +../../upstream/src/adw-settings-impl-portal.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-settings-impl-private.h b/libadwaita/libadwaita/adw-settings-impl-private.h new file mode 120000 index 0000000..3b4fdff --- /dev/null +++ b/libadwaita/libadwaita/adw-settings-impl-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-settings-impl-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-settings-impl-win32.c b/libadwaita/libadwaita/adw-settings-impl-win32.c new file mode 120000 index 0000000..f7d1d57 --- /dev/null +++ b/libadwaita/libadwaita/adw-settings-impl-win32.c @@ -0,0 +1 @@ +../../upstream/src/adw-settings-impl-win32.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-settings-impl.c b/libadwaita/libadwaita/adw-settings-impl.c new file mode 120000 index 0000000..ff6ffd5 --- /dev/null +++ b/libadwaita/libadwaita/adw-settings-impl.c @@ -0,0 +1 @@ +../../upstream/src/adw-settings-impl.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-settings-private.h b/libadwaita/libadwaita/adw-settings-private.h new file mode 120000 index 0000000..020539e --- /dev/null +++ b/libadwaita/libadwaita/adw-settings-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-settings-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-settings.c b/libadwaita/libadwaita/adw-settings.c new file mode 120000 index 0000000..dcde2d2 --- /dev/null +++ b/libadwaita/libadwaita/adw-settings.c @@ -0,0 +1 @@ +../../upstream/src/adw-settings.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-shadow-helper-private.h b/libadwaita/libadwaita/adw-shadow-helper-private.h new file mode 120000 index 0000000..a9679c8 --- /dev/null +++ b/libadwaita/libadwaita/adw-shadow-helper-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-shadow-helper-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-shadow-helper.c b/libadwaita/libadwaita/adw-shadow-helper.c new file mode 120000 index 0000000..25ea7c4 --- /dev/null +++ b/libadwaita/libadwaita/adw-shadow-helper.c @@ -0,0 +1 @@ +../../upstream/src/adw-shadow-helper.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-sheet-controls-private.h b/libadwaita/libadwaita/adw-sheet-controls-private.h new file mode 120000 index 0000000..30f9071 --- /dev/null +++ b/libadwaita/libadwaita/adw-sheet-controls-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-sheet-controls-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-sheet-controls.c b/libadwaita/libadwaita/adw-sheet-controls.c new file mode 120000 index 0000000..4c8a16f --- /dev/null +++ b/libadwaita/libadwaita/adw-sheet-controls.c @@ -0,0 +1 @@ +../../upstream/src/adw-sheet-controls.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-spin-row.c b/libadwaita/libadwaita/adw-spin-row.c new file mode 120000 index 0000000..bace5a0 --- /dev/null +++ b/libadwaita/libadwaita/adw-spin-row.c @@ -0,0 +1 @@ +../../upstream/src/adw-spin-row.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-spin-row.h b/libadwaita/libadwaita/adw-spin-row.h new file mode 120000 index 0000000..b4a2794 --- /dev/null +++ b/libadwaita/libadwaita/adw-spin-row.h @@ -0,0 +1 @@ +../../upstream/src/adw-spin-row.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-spin-row.ui b/libadwaita/libadwaita/adw-spin-row.ui new file mode 120000 index 0000000..79e2621 --- /dev/null +++ b/libadwaita/libadwaita/adw-spin-row.ui @@ -0,0 +1 @@ +../../upstream/src/adw-spin-row.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-split-button.c b/libadwaita/libadwaita/adw-split-button.c new file mode 120000 index 0000000..ea948f7 --- /dev/null +++ b/libadwaita/libadwaita/adw-split-button.c @@ -0,0 +1 @@ +../../upstream/src/adw-split-button.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-split-button.h b/libadwaita/libadwaita/adw-split-button.h new file mode 120000 index 0000000..72f18f0 --- /dev/null +++ b/libadwaita/libadwaita/adw-split-button.h @@ -0,0 +1 @@ +../../upstream/src/adw-split-button.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-spring-animation.c b/libadwaita/libadwaita/adw-spring-animation.c new file mode 120000 index 0000000..f61c2fa --- /dev/null +++ b/libadwaita/libadwaita/adw-spring-animation.c @@ -0,0 +1 @@ +../../upstream/src/adw-spring-animation.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-spring-animation.h b/libadwaita/libadwaita/adw-spring-animation.h new file mode 120000 index 0000000..16d23f5 --- /dev/null +++ b/libadwaita/libadwaita/adw-spring-animation.h @@ -0,0 +1 @@ +../../upstream/src/adw-spring-animation.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-spring-params.c b/libadwaita/libadwaita/adw-spring-params.c new file mode 120000 index 0000000..832d690 --- /dev/null +++ b/libadwaita/libadwaita/adw-spring-params.c @@ -0,0 +1 @@ +../../upstream/src/adw-spring-params.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-spring-params.h b/libadwaita/libadwaita/adw-spring-params.h new file mode 120000 index 0000000..786c304 --- /dev/null +++ b/libadwaita/libadwaita/adw-spring-params.h @@ -0,0 +1 @@ +../../upstream/src/adw-spring-params.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-squeezer.c b/libadwaita/libadwaita/adw-squeezer.c new file mode 120000 index 0000000..eb68c25 --- /dev/null +++ b/libadwaita/libadwaita/adw-squeezer.c @@ -0,0 +1 @@ +../../upstream/src/adw-squeezer.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-squeezer.h b/libadwaita/libadwaita/adw-squeezer.h new file mode 120000 index 0000000..74e9b00 --- /dev/null +++ b/libadwaita/libadwaita/adw-squeezer.h @@ -0,0 +1 @@ +../../upstream/src/adw-squeezer.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-status-page.c b/libadwaita/libadwaita/adw-status-page.c new file mode 120000 index 0000000..19dbcea --- /dev/null +++ b/libadwaita/libadwaita/adw-status-page.c @@ -0,0 +1 @@ +../../upstream/src/adw-status-page.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-status-page.h b/libadwaita/libadwaita/adw-status-page.h new file mode 120000 index 0000000..7c8b839 --- /dev/null +++ b/libadwaita/libadwaita/adw-status-page.h @@ -0,0 +1 @@ +../../upstream/src/adw-status-page.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-status-page.ui b/libadwaita/libadwaita/adw-status-page.ui new file mode 120000 index 0000000..89a1979 --- /dev/null +++ b/libadwaita/libadwaita/adw-status-page.ui @@ -0,0 +1 @@ +../../upstream/src/adw-status-page.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-style-manager-private.h b/libadwaita/libadwaita/adw-style-manager-private.h new file mode 120000 index 0000000..ce54a4a --- /dev/null +++ b/libadwaita/libadwaita/adw-style-manager-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-style-manager-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-style-manager.c b/libadwaita/libadwaita/adw-style-manager.c new file mode 120000 index 0000000..f27ae92 --- /dev/null +++ b/libadwaita/libadwaita/adw-style-manager.c @@ -0,0 +1 @@ +../../upstream/src/adw-style-manager.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-style-manager.h b/libadwaita/libadwaita/adw-style-manager.h new file mode 120000 index 0000000..25aa57a --- /dev/null +++ b/libadwaita/libadwaita/adw-style-manager.h @@ -0,0 +1 @@ +../../upstream/src/adw-style-manager.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-swipe-tracker-private.h b/libadwaita/libadwaita/adw-swipe-tracker-private.h new file mode 120000 index 0000000..d346f3b --- /dev/null +++ b/libadwaita/libadwaita/adw-swipe-tracker-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-swipe-tracker-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-swipe-tracker.c b/libadwaita/libadwaita/adw-swipe-tracker.c new file mode 120000 index 0000000..cc88a59 --- /dev/null +++ b/libadwaita/libadwaita/adw-swipe-tracker.c @@ -0,0 +1 @@ +../../upstream/src/adw-swipe-tracker.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-swipe-tracker.h b/libadwaita/libadwaita/adw-swipe-tracker.h new file mode 120000 index 0000000..64ad8e5 --- /dev/null +++ b/libadwaita/libadwaita/adw-swipe-tracker.h @@ -0,0 +1 @@ +../../upstream/src/adw-swipe-tracker.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-swipeable.c b/libadwaita/libadwaita/adw-swipeable.c new file mode 120000 index 0000000..0246204 --- /dev/null +++ b/libadwaita/libadwaita/adw-swipeable.c @@ -0,0 +1 @@ +../../upstream/src/adw-swipeable.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-swipeable.h b/libadwaita/libadwaita/adw-swipeable.h new file mode 120000 index 0000000..e5386b6 --- /dev/null +++ b/libadwaita/libadwaita/adw-swipeable.h @@ -0,0 +1 @@ +../../upstream/src/adw-swipeable.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-switch-row.c b/libadwaita/libadwaita/adw-switch-row.c new file mode 120000 index 0000000..5e12190 --- /dev/null +++ b/libadwaita/libadwaita/adw-switch-row.c @@ -0,0 +1 @@ +../../upstream/src/adw-switch-row.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-switch-row.h b/libadwaita/libadwaita/adw-switch-row.h new file mode 120000 index 0000000..83eece9 --- /dev/null +++ b/libadwaita/libadwaita/adw-switch-row.h @@ -0,0 +1 @@ +../../upstream/src/adw-switch-row.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-bar-private.h b/libadwaita/libadwaita/adw-tab-bar-private.h new file mode 120000 index 0000000..08eb09e --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-bar-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-bar-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-bar.c b/libadwaita/libadwaita/adw-tab-bar.c new file mode 120000 index 0000000..c667ef3 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-bar.c @@ -0,0 +1 @@ +../../upstream/src/adw-tab-bar.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-bar.h b/libadwaita/libadwaita/adw-tab-bar.h new file mode 120000 index 0000000..773f363 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-bar.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-bar.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-bar.ui b/libadwaita/libadwaita/adw-tab-bar.ui new file mode 120000 index 0000000..2921aed --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-bar.ui @@ -0,0 +1 @@ +../../upstream/src/adw-tab-bar.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-box-private.h b/libadwaita/libadwaita/adw-tab-box-private.h new file mode 120000 index 0000000..551eb7a --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-box-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-box-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-box.c b/libadwaita/libadwaita/adw-tab-box.c new file mode 120000 index 0000000..9f57eb6 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-box.c @@ -0,0 +1 @@ +../../upstream/src/adw-tab-box.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-button.c b/libadwaita/libadwaita/adw-tab-button.c new file mode 120000 index 0000000..66b1f0c --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-button.c @@ -0,0 +1 @@ +../../upstream/src/adw-tab-button.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-button.h b/libadwaita/libadwaita/adw-tab-button.h new file mode 120000 index 0000000..8ba7806 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-button.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-button.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-button.ui b/libadwaita/libadwaita/adw-tab-button.ui new file mode 120000 index 0000000..e97bf48 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-button.ui @@ -0,0 +1 @@ +../../upstream/src/adw-tab-button.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-grid-private.h b/libadwaita/libadwaita/adw-tab-grid-private.h new file mode 120000 index 0000000..b8f872b --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-grid-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-grid-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-grid.c b/libadwaita/libadwaita/adw-tab-grid.c new file mode 120000 index 0000000..bc60eb4 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-grid.c @@ -0,0 +1 @@ +../../upstream/src/adw-tab-grid.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-overview-private.h b/libadwaita/libadwaita/adw-tab-overview-private.h new file mode 120000 index 0000000..7f77fa7 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-overview-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-overview-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-overview.c b/libadwaita/libadwaita/adw-tab-overview.c new file mode 120000 index 0000000..23f02f9 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-overview.c @@ -0,0 +1 @@ +../../upstream/src/adw-tab-overview.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-overview.h b/libadwaita/libadwaita/adw-tab-overview.h new file mode 120000 index 0000000..8573a98 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-overview.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-overview.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-overview.ui b/libadwaita/libadwaita/adw-tab-overview.ui new file mode 120000 index 0000000..4cea9a5 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-overview.ui @@ -0,0 +1 @@ +../../upstream/src/adw-tab-overview.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-private.h b/libadwaita/libadwaita/adw-tab-private.h new file mode 120000 index 0000000..ba77576 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-thumbnail-private.h b/libadwaita/libadwaita/adw-tab-thumbnail-private.h new file mode 120000 index 0000000..189a5f4 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-thumbnail-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-thumbnail-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-thumbnail.c b/libadwaita/libadwaita/adw-tab-thumbnail.c new file mode 120000 index 0000000..86599d7 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-thumbnail.c @@ -0,0 +1 @@ +../../upstream/src/adw-tab-thumbnail.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-thumbnail.ui b/libadwaita/libadwaita/adw-tab-thumbnail.ui new file mode 120000 index 0000000..dff3a89 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-thumbnail.ui @@ -0,0 +1 @@ +../../upstream/src/adw-tab-thumbnail.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-view-private.h b/libadwaita/libadwaita/adw-tab-view-private.h new file mode 120000 index 0000000..01cdb9e --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-view-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-view-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-view.c b/libadwaita/libadwaita/adw-tab-view.c new file mode 120000 index 0000000..b577ec5 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-view.c @@ -0,0 +1 @@ +../../upstream/src/adw-tab-view.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab-view.h b/libadwaita/libadwaita/adw-tab-view.h new file mode 120000 index 0000000..88e16ba --- /dev/null +++ b/libadwaita/libadwaita/adw-tab-view.h @@ -0,0 +1 @@ +../../upstream/src/adw-tab-view.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab.c b/libadwaita/libadwaita/adw-tab.c new file mode 120000 index 0000000..05fc702 --- /dev/null +++ b/libadwaita/libadwaita/adw-tab.c @@ -0,0 +1 @@ +../../upstream/src/adw-tab.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-tab.ui b/libadwaita/libadwaita/adw-tab.ui new file mode 120000 index 0000000..7740dce --- /dev/null +++ b/libadwaita/libadwaita/adw-tab.ui @@ -0,0 +1 @@ +../../upstream/src/adw-tab.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-timed-animation.c b/libadwaita/libadwaita/adw-timed-animation.c new file mode 120000 index 0000000..3e1d20e --- /dev/null +++ b/libadwaita/libadwaita/adw-timed-animation.c @@ -0,0 +1 @@ +../../upstream/src/adw-timed-animation.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-timed-animation.h b/libadwaita/libadwaita/adw-timed-animation.h new file mode 120000 index 0000000..6445472 --- /dev/null +++ b/libadwaita/libadwaita/adw-timed-animation.h @@ -0,0 +1 @@ +../../upstream/src/adw-timed-animation.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toast-overlay.c b/libadwaita/libadwaita/adw-toast-overlay.c new file mode 120000 index 0000000..135aae1 --- /dev/null +++ b/libadwaita/libadwaita/adw-toast-overlay.c @@ -0,0 +1 @@ +../../upstream/src/adw-toast-overlay.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toast-overlay.h b/libadwaita/libadwaita/adw-toast-overlay.h new file mode 120000 index 0000000..1f00d27 --- /dev/null +++ b/libadwaita/libadwaita/adw-toast-overlay.h @@ -0,0 +1 @@ +../../upstream/src/adw-toast-overlay.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toast-private.h b/libadwaita/libadwaita/adw-toast-private.h new file mode 120000 index 0000000..ce802aa --- /dev/null +++ b/libadwaita/libadwaita/adw-toast-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-toast-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toast-widget-private.h b/libadwaita/libadwaita/adw-toast-widget-private.h new file mode 120000 index 0000000..d04befd --- /dev/null +++ b/libadwaita/libadwaita/adw-toast-widget-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-toast-widget-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toast-widget.c b/libadwaita/libadwaita/adw-toast-widget.c new file mode 120000 index 0000000..0d84981 --- /dev/null +++ b/libadwaita/libadwaita/adw-toast-widget.c @@ -0,0 +1 @@ +../../upstream/src/adw-toast-widget.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toast-widget.ui b/libadwaita/libadwaita/adw-toast-widget.ui new file mode 120000 index 0000000..e2bcad0 --- /dev/null +++ b/libadwaita/libadwaita/adw-toast-widget.ui @@ -0,0 +1 @@ +../../upstream/src/adw-toast-widget.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toast.c b/libadwaita/libadwaita/adw-toast.c new file mode 120000 index 0000000..d93cb93 --- /dev/null +++ b/libadwaita/libadwaita/adw-toast.c @@ -0,0 +1 @@ +../../upstream/src/adw-toast.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toast.h b/libadwaita/libadwaita/adw-toast.h new file mode 120000 index 0000000..1326a1d --- /dev/null +++ b/libadwaita/libadwaita/adw-toast.h @@ -0,0 +1 @@ +../../upstream/src/adw-toast.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toolbar-view.c b/libadwaita/libadwaita/adw-toolbar-view.c new file mode 120000 index 0000000..804a8b1 --- /dev/null +++ b/libadwaita/libadwaita/adw-toolbar-view.c @@ -0,0 +1 @@ +../../upstream/src/adw-toolbar-view.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-toolbar-view.h b/libadwaita/libadwaita/adw-toolbar-view.h new file mode 120000 index 0000000..d45e89b --- /dev/null +++ b/libadwaita/libadwaita/adw-toolbar-view.h @@ -0,0 +1 @@ +../../upstream/src/adw-toolbar-view.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-version.c b/libadwaita/libadwaita/adw-version.c new file mode 120000 index 0000000..72c6b37 --- /dev/null +++ b/libadwaita/libadwaita/adw-version.c @@ -0,0 +1 @@ +../../upstream/src/adw-version.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-version.h b/libadwaita/libadwaita/adw-version.h new file mode 100644 index 0000000..6a4eee8 --- /dev/null +++ b/libadwaita/libadwaita/adw-version.h @@ -0,0 +1,255 @@ +/* + * Copyright (C) 2017-2022 Purism SPC + * + * SPDX-License-Identifier: LGPL-2.1-or-later + */ + +#pragma once + +#if !defined(_ADWAITA_INSIDE) && !defined(ADWAITA_COMPILATION) +#error "Only can be included directly." +#endif + +#include + +G_BEGIN_DECLS + +/** + * ADW_MAJOR_VERSION: + * + * Adwaita major version component (e.g. 1 if the version is 1.2.3). + */ +#define ADW_MAJOR_VERSION (1) + +/** + * ADW_MINOR_VERSION: + * + * Adwaita minor version component (e.g. 2 if the version is 1.2.3). + */ +#define ADW_MINOR_VERSION (5) + +/** + * ADW_MICRO_VERSION: + * + * Adwaita micro version component (e.g. 3 if the version is 1.2.3). + */ +#define ADW_MICRO_VERSION (1) + +/** + * ADW_VERSION: + * + * Adwaita version (e.g. 1.2.3). + */ +#define ADW_VERSION (1.5.1) + +/** + * ADW_VERSION_S: + * + * Adwaita version, encoded as a string, useful for printing and + * concatenation. + */ +#define ADW_VERSION_S "1.5.1" + +#define ADW_ENCODE_VERSION(major,minor,micro) \ + ((major) << 24 | (minor) << 16 | (micro) << 8) + +/** + * ADW_VERSION_HEX: + * + * Adwaita version, encoded as an hexadecimal number, useful for + * integer comparisons. + */ +#define ADW_VERSION_HEX \ + (ADW_ENCODE_VERSION (ADW_MAJOR_VERSION, ADW_MINOR_VERSION, ADW_MICRO_VERSION)) + +/** + * ADW_CHECK_VERSION: + * @major: required major version + * @minor: required minor version + * @micro: required micro version + * + * Compile-time version checking. Evaluates to `TRUE` if the version + * of Adwaita is greater than the required one. + */ +#define ADW_CHECK_VERSION(major,minor,micro) \ + (ADW_MAJOR_VERSION > (major) || \ + (ADW_MAJOR_VERSION == (major) && ADW_MINOR_VERSION > (minor)) || \ + (ADW_MAJOR_VERSION == (major) && ADW_MINOR_VERSION == (minor) && \ + ADW_MICRO_VERSION >= (micro))) + +/** + * ADW_VERSION_1_1: + * + * A macro that evaluates to the 1.2 version of Adwaita, in a format + * that can be used by the C pre-processor. + * + * Since: 1.1 + */ +#define ADW_VERSION_1_1 (ADW_ENCODE_VERSION (1, 1, 0)) + +/** + * ADW_VERSION_1_2: + * + * A macro that evaluates to the 1.2 version of Adwaita, in a format + * that can be used by the C pre-processor. + * + * Since: 1.2 + */ +#define ADW_VERSION_1_2 (ADW_ENCODE_VERSION (1, 2, 0)) + +/** + * ADW_VERSION_1_3: + * + * A macro that evaluates to the 1.3 version of Adwaita, in a format + * that can be used by the C pre-processor. + * + * Since: 1.3 + */ +#define ADW_VERSION_1_3 (ADW_ENCODE_VERSION (1, 3, 0)) + +/** + * ADW_VERSION_1_4: + * + * A macro that evaluates to the 1.4 version of Adwaita, in a format + * that can be used by the C pre-processor. + * + * Since: 1.4 + */ +#define ADW_VERSION_1_4 (ADW_ENCODE_VERSION (1, 4, 0)) + +/** + * ADW_VERSION_1_5: + * + * A macro that evaluates to the 1.5 version of Adwaita, in a format + * that can be used by the C pre-processor. + * + * Since: 1.5 + */ +#define ADW_VERSION_1_5 (ADW_ENCODE_VERSION (1, 5, 0)) + +#ifndef _ADW_EXTERN +#define _ADW_EXTERN extern +#endif + +#if defined(ADW_DISABLE_DEPRECATION_WARNINGS) || defined(ADWAITA_COMPILATION) +# define _ADW_DEPRECATED _ADW_EXTERN +# define _ADW_DEPRECATED_FOR(f) _ADW_EXTERN +# define _ADW_DEPRECATED_TYPE +# define _ADW_DEPRECATED_TYPE_FOR(f) +#else +# define _ADW_DEPRECATED G_DEPRECATED _ADW_EXTERN +# define _ADW_DEPRECATED_FOR(f) G_DEPRECATED_FOR(f) _ADW_EXTERN +# define _ADW_DEPRECATED_TYPE G_DEPRECATED +# define _ADW_DEPRECATED_TYPE_FOR(f) G_DEPRECATED_FOR(f) +#endif + +#ifndef ADW_VERSION_MAX_ALLOWED +# define ADW_VERSION_MAX_ALLOWED ADW_VERSION_1_5 +#endif + +#ifndef ADW_VERSION_MIN_REQUIRED +# define ADW_VERSION_MIN_REQUIRED ADW_VERSION_1_5 +#endif + +#if ADW_VERSION_MAX_ALLOWED < ADW_VERSION_1_1 +# define ADW_AVAILABLE_IN_1_1 ADW_UNAVAILABLE(1, 1) +#else +# define ADW_AVAILABLE_IN_1_1 _ADW_EXTERN +#endif + +#if ADW_VERSION_MIN_REQUIRED >= ADW_VERSION_1_1 +# define ADW_DEPRECATED_IN_1_1 _ADW_DEPRECATED +# define ADW_DEPRECATED_IN_1_1_FOR(f) _ADW_DEPRECATED_FOR(f) +# define ADW_DEPRECATED_TYPE_IN_1_1 _ADW_DEPRECATED_TYPE +# define ADW_DEPRECATED_TYPE_IN_1_1_FOR(f) _ADW_DEPRECATED_TYPE_FOR(f) +#else +# define ADW_DEPRECATED_IN_1_1 _ADW_EXTERN +# define ADW_DEPRECATED_IN_1_1_FOR(f) _ADW_EXTERN +# define ADW_DEPRECATED_TYPE_IN_1_1 +# define ADW_DEPRECATED_TYPE_IN_1_1_FOR(f) +#endif + +#if ADW_VERSION_MAX_ALLOWED < ADW_VERSION_1_2 +# define ADW_AVAILABLE_IN_1_2 ADW_UNAVAILABLE(1, 2) +#else +# define ADW_AVAILABLE_IN_1_2 _ADW_EXTERN +#endif + +#if ADW_VERSION_MIN_REQUIRED >= ADW_VERSION_1_2 +# define ADW_DEPRECATED_IN_1_2 _ADW_DEPRECATED +# define ADW_DEPRECATED_IN_1_2_FOR(f) _ADW_DEPRECATED_FOR(f) +# define ADW_DEPRECATED_TYPE_IN_1_2 _ADW_DEPRECATED_TYPE +# define ADW_DEPRECATED_TYPE_IN_1_2_FOR(f) _ADW_DEPRECATED_TYPE_FOR(f) +#else +# define ADW_DEPRECATED_IN_1_2 _ADW_EXTERN +# define ADW_DEPRECATED_IN_1_2_FOR(f) _ADW_EXTERN +# define ADW_DEPRECATED_TYPE_IN_1_2 +# define ADW_DEPRECATED_TYPE_IN_1_2_FOR(f) +#endif + +#if ADW_VERSION_MAX_ALLOWED < ADW_VERSION_1_3 +# define ADW_AVAILABLE_IN_1_3 ADW_UNAVAILABLE(1, 3) +#else +# define ADW_AVAILABLE_IN_1_3 _ADW_EXTERN +#endif + +#if ADW_VERSION_MIN_REQUIRED >= ADW_VERSION_1_3 +# define ADW_DEPRECATED_IN_1_3 _ADW_DEPRECATED +# define ADW_DEPRECATED_IN_1_3_FOR(f) _ADW_DEPRECATED_FOR(f) +# define ADW_DEPRECATED_TYPE_IN_1_3 _ADW_DEPRECATED_TYPE +# define ADW_DEPRECATED_TYPE_IN_1_3_FOR(f) _ADW_DEPRECATED_TYPE_FOR(f) +#else +# define ADW_DEPRECATED_IN_1_3 _ADW_EXTERN +# define ADW_DEPRECATED_IN_1_3_FOR(f) _ADW_EXTERN +# define ADW_DEPRECATED_TYPE_IN_1_3 +# define ADW_DEPRECATED_TYPE_IN_1_3_FOR(f) +#endif + +#if ADW_VERSION_MAX_ALLOWED < ADW_VERSION_1_4 +# define ADW_AVAILABLE_IN_1_4 ADW_UNAVAILABLE(1, 4) +#else +# define ADW_AVAILABLE_IN_1_4 _ADW_EXTERN +#endif + +#if ADW_VERSION_MIN_REQUIRED >= ADW_VERSION_1_4 +# define ADW_DEPRECATED_IN_1_4 _ADW_DEPRECATED +# define ADW_DEPRECATED_IN_1_4_FOR(f) _ADW_DEPRECATED_FOR(f) +# define ADW_DEPRECATED_TYPE_IN_1_4 _ADW_DEPRECATED_TYPE +# define ADW_DEPRECATED_TYPE_IN_1_4_FOR(f) _ADW_DEPRECATED_TYPE_FOR(f) +#else +# define ADW_DEPRECATED_IN_1_4 _ADW_EXTERN +# define ADW_DEPRECATED_IN_1_4_FOR(f) _ADW_EXTERN +# define ADW_DEPRECATED_TYPE_IN_1_4 +# define ADW_DEPRECATED_TYPE_IN_1_4_FOR(f) +#endif + +#if ADW_VERSION_MAX_ALLOWED < ADW_VERSION_1_5 +# define ADW_AVAILABLE_IN_1_5 ADW_UNAVAILABLE(1, 5) +#else +# define ADW_AVAILABLE_IN_1_5 _ADW_EXTERN +#endif + +#if ADW_VERSION_MIN_REQUIRED >= ADW_VERSION_1_5 +# define ADW_DEPRECATED_IN_1_5 _ADW_DEPRECATED +# define ADW_DEPRECATED_IN_1_5_FOR(f) _ADW_DEPRECATED_FOR(f) +# define ADW_DEPRECATED_TYPE_IN_1_5 _ADW_DEPRECATED_TYPE +# define ADW_DEPRECATED_TYPE_IN_1_5_FOR(f) _ADW_DEPRECATED_TYPE_FOR(f) +#else +# define ADW_DEPRECATED_IN_1_5 _ADW_EXTERN +# define ADW_DEPRECATED_IN_1_5_FOR(f) _ADW_EXTERN +# define ADW_DEPRECATED_TYPE_IN_1_5 +# define ADW_DEPRECATED_TYPE_IN_1_5_FOR(f) +#endif + +#define ADW_UNAVAILABLE(major, minor) G_UNAVAILABLE(major, minor) _ADW_EXTERN + +#define ADW_AVAILABLE_IN_ALL _ADW_EXTERN + +ADW_AVAILABLE_IN_ALL +guint adw_get_major_version (void) G_GNUC_CONST; +ADW_AVAILABLE_IN_ALL +guint adw_get_minor_version (void) G_GNUC_CONST; +ADW_AVAILABLE_IN_ALL +guint adw_get_micro_version (void) G_GNUC_CONST; + +G_END_DECLS diff --git a/libadwaita/libadwaita/adw-view-stack.c b/libadwaita/libadwaita/adw-view-stack.c new file mode 120000 index 0000000..3ec6bd4 --- /dev/null +++ b/libadwaita/libadwaita/adw-view-stack.c @@ -0,0 +1 @@ +../../upstream/src/adw-view-stack.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-stack.h b/libadwaita/libadwaita/adw-view-stack.h new file mode 120000 index 0000000..a56277a --- /dev/null +++ b/libadwaita/libadwaita/adw-view-stack.h @@ -0,0 +1 @@ +../../upstream/src/adw-view-stack.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher-bar.c b/libadwaita/libadwaita/adw-view-switcher-bar.c new file mode 120000 index 0000000..664f47b --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher-bar.c @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher-bar.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher-bar.h b/libadwaita/libadwaita/adw-view-switcher-bar.h new file mode 120000 index 0000000..a954a55 --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher-bar.h @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher-bar.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher-bar.ui b/libadwaita/libadwaita/adw-view-switcher-bar.ui new file mode 120000 index 0000000..dce7fb5 --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher-bar.ui @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher-bar.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher-button-private.h b/libadwaita/libadwaita/adw-view-switcher-button-private.h new file mode 120000 index 0000000..248ee0e --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher-button-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher-button-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher-button.c b/libadwaita/libadwaita/adw-view-switcher-button.c new file mode 120000 index 0000000..95209e2 --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher-button.c @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher-button.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher-button.ui b/libadwaita/libadwaita/adw-view-switcher-button.ui new file mode 120000 index 0000000..4ef1cd1 --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher-button.ui @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher-button.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher-title.c b/libadwaita/libadwaita/adw-view-switcher-title.c new file mode 120000 index 0000000..55e8796 --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher-title.c @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher-title.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher-title.h b/libadwaita/libadwaita/adw-view-switcher-title.h new file mode 120000 index 0000000..f710ddd --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher-title.h @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher-title.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher-title.ui b/libadwaita/libadwaita/adw-view-switcher-title.ui new file mode 120000 index 0000000..ef6dd84 --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher-title.ui @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher-title.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher.c b/libadwaita/libadwaita/adw-view-switcher.c new file mode 120000 index 0000000..512f521 --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher.c @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-view-switcher.h b/libadwaita/libadwaita/adw-view-switcher.h new file mode 120000 index 0000000..48f416b --- /dev/null +++ b/libadwaita/libadwaita/adw-view-switcher.h @@ -0,0 +1 @@ +../../upstream/src/adw-view-switcher.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-widget-utils-private.h b/libadwaita/libadwaita/adw-widget-utils-private.h new file mode 120000 index 0000000..7f57ad9 --- /dev/null +++ b/libadwaita/libadwaita/adw-widget-utils-private.h @@ -0,0 +1 @@ +../../upstream/src/adw-widget-utils-private.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-widget-utils.c b/libadwaita/libadwaita/adw-widget-utils.c new file mode 120000 index 0000000..7b74b7d --- /dev/null +++ b/libadwaita/libadwaita/adw-widget-utils.c @@ -0,0 +1 @@ +../../upstream/src/adw-widget-utils.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-window-title.c b/libadwaita/libadwaita/adw-window-title.c new file mode 120000 index 0000000..5ddef4d --- /dev/null +++ b/libadwaita/libadwaita/adw-window-title.c @@ -0,0 +1 @@ +../../upstream/src/adw-window-title.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-window-title.h b/libadwaita/libadwaita/adw-window-title.h new file mode 120000 index 0000000..1592b38 --- /dev/null +++ b/libadwaita/libadwaita/adw-window-title.h @@ -0,0 +1 @@ +../../upstream/src/adw-window-title.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-window-title.ui b/libadwaita/libadwaita/adw-window-title.ui new file mode 120000 index 0000000..243f549 --- /dev/null +++ b/libadwaita/libadwaita/adw-window-title.ui @@ -0,0 +1 @@ +../../upstream/src/adw-window-title.ui \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-window.c b/libadwaita/libadwaita/adw-window.c new file mode 120000 index 0000000..fa7a502 --- /dev/null +++ b/libadwaita/libadwaita/adw-window.c @@ -0,0 +1 @@ +../../upstream/src/adw-window.c \ No newline at end of file diff --git a/libadwaita/libadwaita/adw-window.h b/libadwaita/libadwaita/adw-window.h new file mode 120000 index 0000000..fdd0c91 --- /dev/null +++ b/libadwaita/libadwaita/adw-window.h @@ -0,0 +1 @@ +../../upstream/src/adw-window.h \ No newline at end of file diff --git a/libadwaita/libadwaita/adwaita.gresources.xml b/libadwaita/libadwaita/adwaita.gresources.xml new file mode 120000 index 0000000..9764a10 --- /dev/null +++ b/libadwaita/libadwaita/adwaita.gresources.xml @@ -0,0 +1 @@ +../../upstream/src/adwaita.gresources.xml \ No newline at end of file diff --git a/libadwaita/libadwaita/adwaita.h b/libadwaita/libadwaita/adwaita.h new file mode 120000 index 0000000..cb50d95 --- /dev/null +++ b/libadwaita/libadwaita/adwaita.h @@ -0,0 +1 @@ +../../upstream/src/adwaita.h \ No newline at end of file diff --git a/libadwaita/libadwaita/buildfile b/libadwaita/libadwaita/buildfile new file mode 100644 index 0000000..c957ab2 --- /dev/null +++ b/libadwaita/libadwaita/buildfile @@ -0,0 +1,63 @@ +intf_libs = # Interface dependencies. +impl_libs = # Implementation dependencies. + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import intf_libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +lib{adwaita}: {h c}{** -{*-win32 *-macos} -**.gresources...} \ + $impl_libs $intf_libs +lib{adwaita}: {c}{adw-settings-impl-win32}: \ + include = ($cxx.target.class == 'windows') +lib{adwaita}: {c}{adw-settings-impl-macos}: \ + include = ($cxx.target.class == 'macos') + +# Build options. +# +c.poptions =+ "-I$out_root" "-I$out_base" "-I$src_root" "-I$src_base" \ + "-DADWAITA_COMPILATION" + +#obja{*}: c.poptions += -DLIBADWAITA_STATIC_BUILD +#objs{*}: c.poptions += -DLIBADWAITA_SHARED_BUILD + +# Export options. +# +lib{adwaita}: +{ + c.export.poptions = "-I$out_root" "-I$out_base" "-I$src_root" "-I$src_base" + c.export.libs = $intf_libs +} + +#liba{adwaita}: c.export.poptions += -DLIBADWAITA_STATIC +#libs{adwaita}: c.export.poptions += -DLIBADWAITA_SHARED + +# For pre-releases use the complete version to make sure they cannot +# be used in place of another pre-release or the final version. See +# the version module for details on the version.* variable values. +# +if $version.pre_release + lib{adwaita}: bin.lib.version = "-$version.project_id" +else + lib{adwaita}: bin.lib.version = "-$version.major.$version.minor" + +# Install into the libadwaita/ subdirectory of, say, /usr/include/ +# recreating subdirectories. +# +h{*}: +{ + install = include/libadwaita/ + install.subdirs = true +} + +# adwaita export a single public header file that in turn includes all the +# smaller header files into it. +# +# https://developer.gnome.org/documentation/guidelines/programming/coding-style.html +# +h{adwaita.h}@./: +{ + install = include/ +} diff --git a/libadwaita/libadwaita/config.h b/libadwaita/libadwaita/config.h new file mode 100644 index 0000000..137a056 --- /dev/null +++ b/libadwaita/libadwaita/config.h @@ -0,0 +1,13 @@ +/* + * Autogenerated by the Meson build system. + * Do not edit, your changes will be lost. + */ + +#pragma once + +#define GETTEXT_PACKAGE "libadwaita" + +#define LOCALEDIR "/usr/share/locale" + +#define _ADW_EXTERN __attribute__((visibility("default"))) extern + diff --git a/libadwaita/libadwaita/stylesheet/adwaita-stylesheet-resources.c b/libadwaita/libadwaita/stylesheet/adwaita-stylesheet-resources.c new file mode 100644 index 0000000..5119a39 --- /dev/null +++ b/libadwaita/libadwaita/stylesheet/adwaita-stylesheet-resources.c @@ -0,0 +1,45672 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.adw_stylesheet"), aligned (sizeof(void *) > 8 ? sizeof(void *) : 8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[727824]; const double alignment; void * const ptr;} adw_stylesheet_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\060\003\000\000\000\000\000\050\034\000\000\000" + "\000\000\000\000\004\000\000\000\006\000\000\000\007\000\000\000" + "\011\000\000\000\012\000\000\000\013\000\000\000\013\000\000\000" + "\013\000\000\000\014\000\000\000\015\000\000\000\015\000\000\000" + "\016\000\000\000\016\000\000\000\017\000\000\000\021\000\000\000" + "\022\000\000\000\023\000\000\000\024\000\000\000\024\000\000\000" + "\024\000\000\000\027\000\000\000\030\000\000\000\030\000\000\000" + "\030\000\000\000\030\000\000\000\030\000\000\000\030\000\000\000" + "\270\271\007\313\024\000\000\000\060\003\000\000\017\000\166\000" + "\100\003\000\000\120\003\000\000\300\013\043\171\024\000\000\000" + "\120\003\000\000\014\000\166\000\140\003\000\000\160\003\000\000" + "\254\150\022\274\031\000\000\000\160\003\000\000\022\000\166\000" + "\210\003\000\000\125\007\000\000\214\317\341\030\013\000\000\000" + "\125\007\000\000\007\000\114\000\134\007\000\000\140\007\000\000" + "\251\064\315\023\031\000\000\000\140\007\000\000\034\000\166\000" + "\200\007\000\000\065\010\000\000\101\066\203\121\031\000\000\000" + "\065\010\000\000\032\000\166\000\120\010\000\000\342\010\000\000" + "\332\351\234\111\025\000\000\000\342\010\000\000\010\000\114\000" + "\354\010\000\000\360\010\000\000\127\014\131\005\016\000\000\000" + "\360\010\000\000\013\000\166\000\000\011\000\000\355\251\005\000" + "\113\213\120\055\016\000\000\000\355\251\005\000\021\000\166\000" + "\000\252\005\000\177\262\005\000\174\252\007\372\031\000\000\000" + "\177\262\005\000\021\000\166\000\220\262\005\000\242\265\005\000" + "\261\363\156\276\024\000\000\000\242\265\005\000\007\000\166\000" + "\260\265\005\000\300\265\005\000\100\364\277\000\021\000\000\000" + "\300\265\005\000\004\000\114\000\304\265\005\000\310\265\005\000" + "\251\006\271\222\024\000\000\000\310\265\005\000\012\000\166\000" + "\330\265\005\000\350\265\005\000\133\030\123\044\031\000\000\000" + "\350\265\005\000\036\000\166\000\010\266\005\000\044\267\005\000" + "\315\116\266\250\006\000\000\000\044\267\005\000\007\000\114\000" + "\054\267\005\000\100\267\005\000\172\123\063\065\031\000\000\000" + "\100\267\005\000\022\000\166\000\130\267\005\000\372\270\005\000" + "\016\345\303\003\003\000\000\000\372\270\005\000\006\000\114\000" + "\000\271\005\000\004\271\005\000\113\120\220\013\022\000\000\000" + "\004\271\005\000\004\000\114\000\010\271\005\000\020\271\005\000" + "\324\265\002\000\377\377\377\377\020\271\005\000\001\000\114\000" + "\024\271\005\000\030\271\005\000\061\056\231\370\031\000\000\000" + "\030\271\005\000\035\000\166\000\070\271\005\000\271\272\005\000" + "\324\003\374\166\020\000\000\000\271\272\005\000\016\000\114\000" + "\310\272\005\000\330\272\005\000\260\267\044\060\021\000\000\000" + "\330\272\005\000\006\000\114\000\340\272\005\000\344\272\005\000" + "\344\223\360\264\031\000\000\000\344\272\005\000\023\000\166\000" + "\370\272\005\000\271\275\005\000\041\155\151\214\016\000\000\000" + "\271\275\005\000\022\000\166\000\320\275\005\000\260\306\005\000" + "\377\334\307\076\031\000\000\000\260\306\005\000\033\000\166\000" + "\320\306\005\000\324\307\005\000\117\254\366\176\016\000\000\000" + "\324\307\005\000\007\000\114\000\334\307\005\000\004\310\005\000" + "\037\050\117\340\016\000\000\000\004\310\005\000\010\000\166\000" + "\020\310\005\000\050\032\013\000\363\337\217\247\031\000\000\000" + "\050\032\013\000\034\000\166\000\110\032\013\000\017\033\013\000" + "\147\164\153\055\150\143\055\144\141\162\153\056\143\163\163\000" + "\000\000\000\000\000\000\000\000\000\000\050\165\165\141\171\051" + "\147\164\153\055\144\141\162\153\056\143\163\163\000\000\000\000" + "\000\000\000\000\000\000\000\000\000\000\050\165\165\141\171\051" + "\144\145\166\145\154\055\163\171\155\142\157\154\151\143\056\163" + "\166\147\000\000\000\000\000\000\275\003\000\000\000\000\000\000" + "\074\163\166\147\040\167\151\144\164\150\075\042\066\060\042\040" + "\150\145\151\147\150\164\075\042\064\067\042\040\170\155\154\156" + "\163\072\170\154\151\156\153\075\042\150\164\164\160\072\057\057" + "\167\167\167\056\167\063\056\157\162\147\057\061\071\071\071\057" + "\170\154\151\156\153\042\040\170\155\154\156\163\075\042\150\164" + "\164\160\072\057\057\167\167\167\056\167\063\056\157\162\147\057" + "\062\060\060\060\057\163\166\147\042\076\074\160\141\164\150\040" + "\151\144\075\042\141\042\040\163\164\171\154\145\075\042\146\151" + "\154\154\072\043\060\060\060\073\146\151\154\154\055\157\160\141" + "\143\151\164\171\072\061\073\163\164\162\157\153\145\055\167\151" + "\144\164\150\072\062\067\056\071\065\065\073\163\164\162\157\153" + "\145\055\154\151\156\145\143\141\160\072\162\157\165\156\144\073" + "\163\164\162\157\153\145\055\154\151\156\145\152\157\151\156\072" + "\162\157\165\156\144\073\163\164\162\157\153\145\055\157\160\141" + "\143\151\164\171\072\056\064\070\062\063\061\070\073\163\164\157" + "\160\055\143\157\154\157\162\072\043\060\060\060\042\040\144\075" + "\042\115\060\040\060\150\062\071\056\070\070\154\064\071\056\070" + "\067\065\040\064\067\114\063\062\056\066\063\067\040\063\154\064" + "\066\056\061\070\065\040\064\064\114\063\061\056\067\060\063\040" + "\063\154\064\066\056\061\070\065\040\064\064\114\063\060\056\067" + "\066\071\040\063\154\064\066\056\061\070\065\040\064\064\114\062" + "\071\056\070\063\066\040\063\040\067\066\056\060\062\040\064\067" + "\040\062\070\056\071\060\062\040\063\154\064\066\056\061\070\065" + "\040\064\064\114\062\067\056\071\066\070\040\063\154\064\066\056" + "\061\070\065\040\064\064\114\062\067\056\060\063\064\040\063\040" + "\067\063\056\062\062\040\064\067\040\062\066\056\061\060\061\040" + "\063\154\064\066\056\061\070\064\040\064\064\114\062\065\056\061" + "\066\067\040\063\154\064\066\056\061\070\065\040\064\064\114\062" + "\064\056\062\063\063\040\063\154\064\066\056\061\070\065\040\064" + "\064\114\062\063\056\062\071\071\040\063\154\064\066\056\061\070" + "\065\040\064\064\114\062\062\056\063\066\066\040\063\040\066\070" + "\056\065\065\040\064\067\040\062\061\056\064\063\062\040\063\154" + "\064\066\056\061\070\065\040\064\064\114\062\060\056\064\071\070" + "\040\063\154\064\066\056\061\070\065\040\064\064\114\061\071\056" + "\065\066\064\040\063\040\066\065\056\067\065\040\064\067\040\061" + "\070\056\066\063\040\063\154\064\066\056\061\070\065\040\064\064" + "\114\061\067\056\066\071\067\040\063\154\064\066\056\061\070\065" + "\040\064\064\114\061\066\056\067\066\063\040\063\154\064\066\056" + "\061\070\065\040\064\064\114\061\065\056\070\062\071\040\063\154" + "\064\066\056\061\070\065\040\064\064\114\061\064\056\070\071\065" + "\040\063\040\066\061\056\060\070\040\064\067\040\061\063\056\071" + "\066\062\040\063\154\064\066\056\061\070\065\040\064\064\114\061" + "\063\056\060\062\070\040\063\154\064\066\056\061\070\065\040\064" + "\064\114\061\062\056\060\071\064\040\063\040\065\070\056\062\070" + "\040\064\067\040\061\061\056\061\066\040\063\154\064\066\056\061" + "\070\065\040\064\064\114\061\060\056\062\062\067\040\063\154\064" + "\066\056\061\070\065\040\064\064\114\071\056\062\071\062\040\063" + "\154\064\066\056\061\070\066\040\064\064\114\070\056\063\065\071" + "\040\063\154\064\066\056\061\070\065\040\064\064\114\067\056\064" + "\062\065\040\063\040\065\063\056\066\061\040\064\067\040\066\056" + "\064\071\062\040\063\154\064\066\056\061\070\065\040\064\064\114" + "\065\056\065\065\067\040\063\154\064\066\056\061\070\066\040\064" + "\064\114\064\056\066\062\064\040\063\040\065\060\056\070\061\040" + "\064\067\040\063\056\066\071\040\063\154\064\066\056\061\070\065" + "\040\064\064\132\042\057\076\074\165\163\145\040\170\154\151\156" + "\153\072\150\162\145\146\075\042\043\141\042\040\164\162\141\156" + "\163\146\157\162\155\075\042\164\162\141\156\163\154\141\164\145" + "\050\055\065\071\056\070\067\065\051\042\040\167\151\144\164\150" + "\075\042\061\060\060\045\042\040\150\145\151\147\150\164\075\042" + "\061\060\060\045\042\057\076\074\057\163\166\147\076\000\000\050" + "\165\165\141\171\051\154\151\142\147\164\153\057\020\000\000\000" + "\142\165\154\154\145\164\055\163\171\155\142\157\154\151\143\056" + "\163\171\155\142\157\154\151\143\056\160\156\147\000\000\000\000" + "\245\000\000\000\000\000\000\000\211\120\116\107\015\012\032\012" + "\000\000\000\015\111\110\104\122\000\000\000\016\000\000\000\016" + "\010\006\000\000\000\037\110\055\321\000\000\000\004\163\102\111" + "\124\010\010\010\010\174\010\144\210\000\000\000\134\111\104\101" + "\124\050\221\325\220\101\012\200\040\024\104\037\235\303\226\341" + "\335\343\323\011\272\222\013\275\200\055\062\220\250\321\245\016" + "\274\325\377\017\206\201\251\263\002\006\244\302\001\370\036\051" + "\000\371\105\000\234\022\355\103\172\330\225\230\204\030\353\307" + "\245\325\275\112\126\342\051\104\165\303\363\077\316\326\252\344" + "\270\207\210\005\353\221\006\316\005\332\254\044\325\277\274\024" + "\322\000\000\000\000\111\105\116\104\256\102\140\202\000\000\050" + "\165\165\141\171\051\144\141\163\150\055\163\171\155\142\157\154" + "\151\143\056\163\171\155\142\157\154\151\143\056\160\156\147\000" + "\202\000\000\000\000\000\000\000\211\120\116\107\015\012\032\012" + "\000\000\000\015\111\110\104\122\000\000\000\016\000\000\000\016" + "\010\006\000\000\000\037\110\055\321\000\000\000\004\163\102\111" + "\124\010\010\010\010\174\010\144\210\000\000\000\071\111\104\101" + "\124\050\221\355\316\101\012\000\020\000\005\321\227\333\341\376" + "\027\300\075\130\051\073\312\116\246\146\371\233\317\147\113\106" + "\103\337\130\221\326\141\075\030\115\013\204\333\253\351\260\132" + "\020\157\143\317\063\000\234\311\040\142\257\253\014\013\000\000" + "\000\000\111\105\116\104\256\102\140\202\000\000\050\165\165\141" + "\171\051\101\144\167\141\151\164\141\057\000\000\016\000\000\000" + "\142\141\163\145\055\150\143\056\143\163\163\000\000\000\000\000" + "\335\240\005\000\000\000\000\000\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\142\154\165\145\137\061\040\043\071\071" + "\143\061\146\061\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\142\154\165\145\137\062\040\043\066\062\141\060" + "\145\141\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\142\154\165\145\137\063\040\043\063\065\070\064\145\064" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\142\154\165\145\137\064\040\043\061\143\067\061\144\070\073\012" + "\100\144\145\146\151\156\145\055\143\157\154\157\162\040\142\154" + "\165\145\137\065\040\043\061\141\065\146\142\064\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\147\162\145\145" + "\156\137\061\040\043\070\146\146\060\141\064\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\147\162\145\145\156" + "\137\062\040\043\065\067\145\063\070\071\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\147\162\145\145\156\137" + "\063\040\043\063\063\144\061\067\141\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\147\162\145\145\156\137\064" + "\040\043\062\145\143\062\067\145\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\147\162\145\145\156\137\065\040" + "\043\062\066\141\062\066\071\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\061\040" + "\043\146\071\146\060\066\142\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\062\040" + "\043\146\070\145\064\065\143\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\063\040" + "\043\146\066\144\063\062\144\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\064\040" + "\043\146\065\143\062\061\061\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\065\040" + "\043\145\065\141\065\060\141\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\061\040" + "\043\146\146\142\145\066\146\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\062\040" + "\043\146\146\141\063\064\070\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\063\040" + "\043\146\146\067\070\060\060\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\064\040" + "\043\145\066\066\061\060\060\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\065\040" + "\043\143\066\064\066\060\060\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\162\145\144\137\061\040\043\146\066" + "\066\061\065\061\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\162\145\144\137\062\040\043\145\144\063\063\063" + "\142\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\162\145\144\137\063\040\043\145\060\061\142\062\064\073\012" + "\100\144\145\146\151\156\145\055\143\157\154\157\162\040\162\145" + "\144\137\064\040\043\143\060\061\143\062\070\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\162\145\144\137\065" + "\040\043\141\065\061\144\062\144\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\061" + "\040\043\144\143\070\141\144\144\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\062" + "\040\043\143\060\066\061\143\142\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\063" + "\040\043\071\061\064\061\141\143\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\064" + "\040\043\070\061\063\144\071\143\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\065" + "\040\043\066\061\063\065\070\063\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\142\162\157\167\156\137\061\040" + "\043\143\144\141\142\070\146\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\142\162\157\167\156\137\062\040\043" + "\142\065\070\063\065\141\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\142\162\157\167\156\137\063\040\043\071" + "\070\066\141\064\064\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\142\162\157\167\156\137\064\040\043\070\066" + "\065\145\063\143\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\142\162\157\167\156\137\065\040\043\066\063\064" + "\065\062\143\073\012\100\144\145\146\151\156\145\055\143\157\154" + "\157\162\040\154\151\147\150\164\137\061\040\043\146\146\146\146" + "\146\146\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\154\151\147\150\164\137\062\040\043\146\066\146\065\146" + "\064\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\154\151\147\150\164\137\063\040\043\144\145\144\144\144\141" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\154\151\147\150\164\137\064\040\043\143\060\142\146\142\143\073" + "\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040\154" + "\151\147\150\164\137\065\040\043\071\141\071\071\071\066\073\012" + "\100\144\145\146\151\156\145\055\143\157\154\157\162\040\144\141" + "\162\153\137\061\040\043\067\067\067\066\067\142\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\144\141\162\153" + "\137\062\040\043\065\145\065\143\066\064\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\144\141\162\153\137\063" + "\040\043\063\144\063\070\064\066\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\144\141\162\153\137\064\040\043" + "\062\064\061\146\063\061\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\144\141\162\153\137\065\040\043\060\060" + "\060\060\060\060\073\012\056\142\141\143\153\147\162\157\165\156" + "\144\040\173\040\143\157\154\157\162\072\040\100\167\151\156\144" + "\157\167\137\146\147\137\143\157\154\157\162\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\167\151\156\144\157\167\137\142\147\137\143\157\154\157\162\073" + "\040\175\012\012\144\156\144\040\173\040\143\157\154\157\162\072" + "\040\100\167\151\156\144\157\167\137\146\147\137\143\157\154\157" + "\162\073\040\175\012\012\056\156\157\162\155\141\154\055\151\143" + "\157\156\163\040\173\040\055\147\164\153\055\151\143\157\156\055" + "\163\151\172\145\072\040\061\066\160\170\073\040\175\012\012\056" + "\154\141\162\147\145\055\151\143\157\156\163\040\173\040\055\147" + "\164\153\055\151\143\157\156\055\163\151\172\145\072\040\063\062" + "\160\170\073\040\175\012\012\056\157\163\144\040\160\157\160\157" + "\166\145\162\040\076\040\141\162\162\157\167\054\040\056\157\163" + "\144\040\160\157\160\157\166\145\162\040\076\040\143\157\156\164" + "\145\156\164\163\054\040\160\157\160\157\166\145\162\056\164\157" + "\165\143\150\055\163\145\154\145\143\164\151\157\156\040\076\040" + "\141\162\162\157\167\054\040\160\157\160\157\166\145\162\056\164" + "\157\165\143\150\055\163\145\154\145\143\164\151\157\156\040\076" + "\040\143\157\156\164\145\156\164\163\054\040\160\157\160\157\166" + "\145\162\056\155\141\147\156\151\146\151\145\162\040\076\040\141" + "\162\162\157\167\054\040\160\157\160\157\166\145\162\056\155\141" + "\147\156\151\146\151\145\162\040\076\040\143\157\156\164\145\156" + "\164\163\054\040\164\157\141\163\164\054\040\056\141\160\160\055" + "\156\157\164\151\146\151\143\141\164\151\157\156\054\040\144\151" + "\141\154\157\147\055\150\157\163\164\040\076\040\144\151\141\154" + "\157\147\056\157\163\144\040\163\150\145\145\164\054\040\056\157" + "\163\144\040\173\040\143\157\154\157\162\072\040\162\147\142\141" + "\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040" + "\060\056\071\051\073\040\142\157\162\144\145\162\072\040\156\157" + "\156\145\073\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\067\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\154\151\160\072\040\160\141\144\144\151" + "\156\147\055\142\157\170\073\040\175\012\012\057\052\040\124\145" + "\170\164\040\163\145\154\145\143\164\151\157\156\040\052\057\012" + "\163\145\154\145\143\164\151\157\156\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\100\166\151\145\167\137\146\147\137\143\157\154" + "\157\162\054\060\056\061\051\073\040\143\157\154\157\162\072\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\175\012\012" + "\163\145\154\145\143\164\151\157\156\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\054\060\056\063\051\073\040\175\012\012\072\156\157\164\050" + "\167\151\156\144\157\167\051\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\072\146\157\143\165\163\054\040\072\156\157\164" + "\050\167\151\156\144\157\167\051\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\040\173\040\142\157\162\144\145\162\055\143" + "\157\154\157\162\072\040\100\141\143\143\145\156\164\137\142\147" + "\137\143\157\154\157\162\073\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\060\040\060\040" + "\061\160\170\040\100\141\143\143\145\156\164\137\142\147\137\143" + "\157\154\157\162\073\040\143\141\162\145\164\055\143\157\154\157" + "\162\072\040\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\056\156\141\166\151\147\141\164" + "\151\157\156\055\163\151\144\145\142\141\162\040\072\156\157\164" + "\050\167\151\156\144\157\167\051\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\072\146\157\143\165\163\054\040\056\156\141" + "\166\151\147\141\164\151\157\156\055\163\151\144\145\142\141\162" + "\040\072\156\157\164\050\167\151\156\144\157\167\051\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\054\040\160\154\141\143" + "\145\163\163\151\144\145\142\141\162\040\072\156\157\164\050\167" + "\151\156\144\157\167\051\072\144\162\157\160\050\141\143\164\151" + "\166\145\051\072\146\157\143\165\163\054\040\160\154\141\143\145" + "\163\163\151\144\145\142\141\162\040\072\156\157\164\050\167\151" + "\156\144\157\167\051\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\054\040\163\164\141\143\153\163\167\151\164\143\150\145" + "\162\040\072\156\157\164\050\167\151\156\144\157\167\051\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\072\146\157\143\165" + "\163\054\040\163\164\141\143\153\163\167\151\164\143\150\145\162" + "\040\072\156\157\164\050\167\151\156\144\157\167\051\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\054\040\145\170\160\141" + "\156\144\145\162\055\167\151\144\147\145\164\040\072\156\157\164" + "\050\167\151\156\144\157\167\051\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\072\146\157\143\165\163\054\040\145\170\160" + "\141\156\144\145\162\055\167\151\144\147\145\164\040\072\156\157" + "\164\050\167\151\156\144\157\167\051\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\040\173\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\156\157\156\145\073\040\175\012\012\057\052" + "\040\117\165\164\154\151\156\145\040\146\157\162\040\154\157\167" + "\040\162\145\163\040\151\143\157\156\163\040\052\057\012\056\154" + "\157\167\162\145\163\055\151\143\157\156\040\173\040\055\147\164" + "\153\055\151\143\157\156\055\163\150\141\144\157\167\072\040\060" + "\040\055\061\160\170\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\060\065\051\054\040\061\160\170\040\060" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\061\051\054\040\060\040\061\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\063\051\054\040\055" + "\061\160\170\040\060\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\061\051\073\040\175\012\012\057\052\040" + "\104\162\157\160\040\163\150\141\144\157\167\040\146\157\162\040" + "\154\141\162\147\145\040\151\143\157\156\163\040\052\057\012\056" + "\151\143\157\156\055\144\162\157\160\163\150\141\144\157\167\040" + "\173\040\055\147\164\153\055\151\143\157\156\055\163\150\141\144" + "\157\167\072\040\060\040\061\160\170\040\061\062\160\170\040\162" + "\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056\060" + "\065\051\054\040\060\040\055\061\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\060\065\051\054\040" + "\061\160\170\040\060\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\061\051\054\040\060\040\061\160\170\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\063\051\054\040\055\061\160\170\040\060\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\061\051\073\040\175" + "\012\012\100\153\145\171\146\162\141\155\145\163\040\156\145\145" + "\144\163\137\141\164\164\145\156\164\151\157\156\040\173\040\146" + "\162\157\155\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\162\141\144\151\141\154\055\147" + "\162\141\144\151\145\156\164\050\146\141\162\164\150\145\163\164" + "\055\163\151\144\145\054\040\100\141\143\143\145\156\164\137\143" + "\157\154\157\162\040\060\045\054\040\164\162\141\156\163\160\141" + "\162\145\156\164\040\060\045\051\073\040\175\012\040\040\164\157" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\162\141\144\151\141\154\055\147\162\141\144" + "\151\145\156\164\050\146\141\162\164\150\145\163\164\055\163\151" + "\144\145\054\040\100\141\143\143\145\156\164\137\143\157\154\157" + "\162\040\071\065\045\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\051\073\040\175\040\175\012\012\163\164\141\143\153\163" + "\151\144\145\142\141\162\040\162\157\167\056\156\145\145\144\163" + "\055\141\164\164\145\156\164\151\157\156\040\076\040\154\141\142" + "\145\154\054\040\163\164\141\143\153\163\167\151\164\143\150\145" + "\162\040\076\040\142\165\164\164\157\156\056\156\145\145\144\163" + "\055\141\164\164\145\156\164\151\157\156\040\076\040\154\141\142" + "\145\154\054\040\163\164\141\143\153\163\167\151\164\143\150\145" + "\162\040\076\040\142\165\164\164\157\156\056\156\145\145\144\163" + "\055\141\164\164\145\156\164\151\157\156\040\076\040\151\155\141" + "\147\145\040\173\040\141\156\151\155\141\164\151\157\156\072\040" + "\156\145\145\144\163\137\141\164\164\145\156\164\151\157\156\040" + "\061\065\060\155\163\040\145\141\163\145\055\151\156\073\040\142" + "\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072" + "\040\162\141\144\151\141\154\055\147\162\141\144\151\145\156\164" + "\050\146\141\162\164\150\145\163\164\055\163\151\144\145\054\040" + "\100\141\143\143\145\156\164\137\143\157\154\157\162\040\071\066" + "\045\054\040\164\162\141\156\163\160\141\162\145\156\164\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\163\151\172\145" + "\072\040\066\160\170\040\066\160\170\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\162\145\160\145\141\164\072\040\156\157" + "\055\162\145\160\145\141\164\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\160\157\163\151\164\151\157\156\072\040\162\151" + "\147\150\164\040\063\160\170\073\040\175\012\012\163\164\141\143" + "\153\163\151\144\145\142\141\162\040\162\157\167\056\156\145\145" + "\144\163\055\141\164\164\145\156\164\151\157\156\040\076\040\154" + "\141\142\145\154\072\144\151\162\050\162\164\154\051\054\040\163" + "\164\141\143\153\163\167\151\164\143\150\145\162\040\076\040\142" + "\165\164\164\157\156\056\156\145\145\144\163\055\141\164\164\145" + "\156\164\151\157\156\040\076\040\154\141\142\145\154\072\144\151" + "\162\050\162\164\154\051\054\040\163\164\141\143\153\163\167\151" + "\164\143\150\145\162\040\076\040\142\165\164\164\157\156\056\156" + "\145\145\144\163\055\141\164\164\145\156\164\151\157\156\040\076" + "\040\151\155\141\147\145\072\144\151\162\050\162\164\154\051\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\160\157\163" + "\151\164\151\157\156\072\040\154\145\146\164\040\063\160\170\073" + "\040\175\012\012\141\166\141\164\141\162\040\173\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\071\071\071\071" + "\160\170\073\040\146\157\156\164\055\167\145\151\147\150\164\072" + "\040\142\157\154\144\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\061\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\070\063\142" + "\066\145\143\054\040\043\063\063\067\146\144\143\051\073\040\143" + "\157\154\157\162\072\040\043\143\146\145\061\146\065\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\062\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\043\067\141\144\071\146\061\054\040\043\060\146" + "\071\141\143\070\051\073\040\143\157\154\157\162\072\040\043\143" + "\141\145\141\146\062\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\063\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\070\144\145" + "\066\142\061\054\040\043\062\071\141\145\067\064\051\073\040\143" + "\157\154\157\162\072\040\043\143\145\146\070\144\070\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\064\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\043\142\065\145\071\070\141\054\040\043\066\141" + "\142\070\065\142\051\073\040\143\157\154\157\162\072\040\043\145" + "\066\146\071\144\067\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\065\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\146\070\145" + "\063\065\071\054\040\043\144\062\071\144\060\071\051\073\040\143" + "\157\154\157\162\072\040\043\146\071\146\064\145\061\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\066\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\043\146\146\143\142\066\062\054\040\043\144\066" + "\070\064\060\060\051\073\040\143\157\154\157\162\072\040\043\146" + "\146\145\141\144\061\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\067\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\146\146\141" + "\071\065\141\054\040\043\145\144\065\142\060\060\051\073\040\143" + "\157\154\157\162\072\040\043\146\146\145\065\143\065\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\070\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\043\146\067\070\067\067\063\054\040\043\145\066" + "\062\144\064\062\051\073\040\143\157\154\157\162\072\040\043\146" + "\070\144\062\143\145\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\071\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\145\071\067" + "\063\141\142\054\040\043\145\063\063\142\066\141\051\073\040\143" + "\157\154\157\162\072\040\043\146\141\143\067\144\145\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\061\060" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\043\143\142\067\070\144\064\054\040\043\071" + "\071\064\065\142\065\051\073\040\143\157\154\157\162\072\040\043" + "\145\067\143\062\145\070\073\040\175\012\012\141\166\141\164\141" + "\162\056\143\157\154\157\162\061\061\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\154\151" + "\156\145\141\162\055\147\162\141\144\151\145\156\164\050\043\071" + "\145\071\061\145\070\054\040\043\067\141\065\071\143\141\051\073" + "\040\143\157\154\157\162\072\040\043\144\065\144\062\146\065\073" + "\040\175\012\012\141\166\141\164\141\162\056\143\157\154\157\162" + "\061\062\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\151\155\141\147\145\072\040\154\151\156\145\141\162\055\147\162" + "\141\144\151\145\156\164\050\043\145\063\143\146\071\143\054\040" + "\043\142\060\070\071\065\062\051\073\040\143\157\154\157\162\072" + "\040\043\146\062\145\141\144\145\073\040\175\012\012\141\166\141" + "\164\141\162\056\143\157\154\157\162\061\063\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\043\142\145\071\061\066\144\054\040\043\067\070\065\063\063\066" + "\051\073\040\143\157\154\157\162\072\040\043\145\065\144\066\143" + "\141\073\040\175\012\012\141\166\141\164\141\162\056\143\157\154" + "\157\162\061\064\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\151\155\141\147\145\072\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\043\143\060\142\146\142\143" + "\054\040\043\066\145\066\144\067\061\051\073\040\143\157\154\157" + "\162\072\040\043\144\070\144\067\144\063\073\040\175\012\012\141" + "\166\141\164\141\162\056\143\157\156\164\162\141\163\164\145\144" + "\040\173\040\143\157\154\157\162\072\040\167\150\151\164\145\073" + "\040\175\012\012\141\166\141\164\141\162\056\151\155\141\147\145" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\175\012\012\142\157\164\164\157\155\055\163" + "\150\145\145\164\040\076\040\144\151\155\155\151\156\147\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\062\051\073\040\175\012\012\142\157\164" + "\164\157\155\055\163\150\145\145\164\040\076\040\163\150\145\145" + "\164\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154" + "\145\146\164\055\162\141\144\151\165\163\072\040\061\062\160\170" + "\073\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\061\062\160\170\073" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\060\040\062" + "\160\170\040\070\160\170\040\062\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\060\067\051\054\040" + "\060\040\063\160\170\040\062\060\160\170\040\061\060\160\170\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\060\065\051\054\040\060\040\066\160\170\040\063\062\160\170\040" + "\061\066\160\170\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\060\062\051\054\040\060\040\060\040\060\040" + "\061\160\170\040\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\070\051\073\040\175\012\012\142\157\164\164\157" + "\155\055\163\150\145\145\164\040\076\040\163\150\145\145\164\040" + "\076\040\144\162\141\147\055\150\141\156\144\154\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\062\065\051\073\040\155\151\156\055" + "\167\151\144\164\150\072\040\066\060\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\064\160\170\073\040\155\141" + "\162\147\151\156\072\040\066\160\170\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\071\071\160\170\073\040" + "\175\012\012\142\157\164\164\157\155\055\163\150\145\145\164\040" + "\076\040\163\150\145\145\164\040\076\040\157\165\164\154\151\156" + "\145\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154" + "\145\146\164\055\162\141\144\151\165\163\072\040\061\062\160\170" + "\073\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\061\062\160\170\073" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\061\160\170\040\060\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\063" + "\051\054\040\151\156\163\145\164\040\055\061\160\170\040\060\040" + "\162\147\142\141\050\062\065\065\054\040\062\065\065\054\040\062" + "\065\065\054\040\060\056\063\051\054\040\151\156\163\145\164\040" + "\060\040\061\160\170\040\162\147\142\141\050\062\065\065\054\040" + "\062\065\065\054\040\062\065\065\054\040\060\056\063\051\073\040" + "\175\012\012\142\157\164\164\157\155\055\163\150\145\145\164\040" + "\076\040\163\150\145\145\164\040\076\040\157\165\164\154\151\156" + "\145\056\146\154\165\163\150\055\154\145\146\164\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\055\061\160\170\040\060\040\162\147\142\141\050\062\065\065" + "\054\040\062\065\065\054\040\062\065\065\054\040\060\056\063\051" + "\054\040\151\156\163\145\164\040\060\040\061\160\170\040\162\147" + "\142\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065" + "\054\040\060\056\063\051\073\040\175\012\012\142\157\164\164\157" + "\155\055\163\150\145\145\164\040\076\040\163\150\145\145\164\040" + "\076\040\157\165\164\154\151\156\145\056\146\154\165\163\150\055" + "\162\151\147\150\164\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\061\160\170\040\060\040" + "\162\147\142\141\050\062\065\065\054\040\062\065\065\054\040\062" + "\065\065\054\040\060\056\063\051\054\040\151\156\163\145\164\040" + "\060\040\061\160\170\040\162\147\142\141\050\062\065\065\054\040" + "\062\065\065\054\040\062\065\065\054\040\060\056\063\051\073\040" + "\175\012\012\142\157\164\164\157\155\055\163\150\145\145\164\040" + "\076\040\163\150\145\145\164\040\076\040\157\165\164\154\151\156" + "\145\056\146\154\165\163\150\055\154\145\146\164\056\146\154\165" + "\163\150\055\162\151\147\150\164\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040\061" + "\160\170\040\162\147\142\141\050\062\065\065\054\040\062\065\065" + "\054\040\062\065\065\054\040\060\056\063\051\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\154\141\163\164\055\143\150\151\154\144\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\162\164\154\051\072" + "\146\151\162\163\164\055\143\150\151\154\144\054\040\143\157\154" + "\157\162\163\167\141\164\143\150\043\141\144\144\055\143\157\154" + "\157\162\055\142\165\164\164\157\156\040\076\040\157\166\145\162" + "\154\141\171\054\040\142\165\164\164\157\156\040\173\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\062\064\160\170\073\040" + "\155\151\156\055\167\151\144\164\150\072\040\061\066\160\170\073" + "\040\160\141\144\144\151\156\147\072\040\065\160\170\040\061\060" + "\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\066\160\170\073\040\146\157\156\164\055\167\145\151" + "\147\150\164\072\040\142\157\154\144\073\040\175\012\012\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040" + "\076\040\164\141\142\163\040\076\040\141\162\162\157\167\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\154" + "\164\162\051\072\154\141\163\164\055\143\150\151\154\144\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\054\040\143\157\154\157\162" + "\163\167\141\164\143\150\043\141\144\144\055\143\157\154\157\162" + "\055\142\165\164\164\157\156\040\076\040\157\166\145\162\154\141" + "\171\054\040\142\165\164\164\157\156\040\173\040\157\165\164\154" + "\151\156\145\072\040\060\040\163\157\154\151\144\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\072\040\064\160\170\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\142\141\143\153\147\162" + "\157\165\156\144\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\142\157\170\055\163\150\141\144\157\167\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\073\040\175\012\012\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164" + "\141\142\163\040\076\040\141\162\162\157\167\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\143\157\154\157\162\163\167\141\164" + "\143\150\043\141\144\144\055\143\157\154\157\162\055\142\165\164" + "\164\157\156\040\076\040\157\166\145\162\154\141\171\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\054\060\056\070\051\073\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\055\062\160" + "\170\073\040\175\012\012\056\157\163\144\040\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164" + "\141\142\163\040\076\040\141\162\162\157\167\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\056\157\163\144\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156" + "\040\056\157\163\144\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\054\040\056" + "\157\163\144\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157" + "\167\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\162\157\167" + "\056\163\160\151\156\040\056\157\163\144\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\157\163\144\040" + "\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055" + "\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157" + "\166\145\162\154\141\171\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\056\157\163\144" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\040\173\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\072\040\162\147\142" + "\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054" + "\040\060\056\065\051\073\040\175\012\012\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160" + "\157\160\157\166\145\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\054\040\056\164" + "\157\157\154\142\141\162\040\160\157\160\157\166\145\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\054\040\150\145\141\144\145\162\142\141\162\040" + "\160\157\160\157\166\145\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056\154" + "\151\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164\162" + "\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162" + "\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\154\164" + "\162\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\144\151\162\050\162\164\154\051\072\146\151\162\163" + "\164\055\143\150\151\154\144\054\040\143\157\154\157\162\163\167" + "\141\164\143\150\043\141\144\144\055\143\157\154\157\162\055\142" + "\165\164\164\157\156\040\076\040\157\166\145\162\154\141\171\054" + "\040\142\165\164\164\157\156\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\051\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\060\040\060\040\060\040\061\160\170" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\073\040\175\012\012\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\150\157\166\145\162\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\150\157\166\145\162\054\040\056\164\157" + "\157\154\142\141\162\040\160\157\160\157\166\145\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\150\157\166\145\162\054\040\150\145\141\144\145" + "\162\142\141\162\040\160\157\160\157\166\145\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\150\157\166\145\162\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\160\157\160\157\166\145\162\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\150\157\166\145" + "\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056" + "\154\151\156\153\145\144\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167\072" + "\150\157\166\145\162\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\150\157\166\145\162\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\154\164\162\051\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\150\157\166\145\162\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162" + "\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\144\151\162\050\154\164\162\051\072\154" + "\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\150\157\166\145\162\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\054\040\143\157\154\157\162" + "\163\167\141\164\143\150\043\141\144\144\055\143\157\154\157\162" + "\055\142\165\164\164\157\156\040\076\040\157\166\145\162\154\141" + "\171\072\150\157\166\145\162\054\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061" + "\065\051\073\040\175\012\012\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\160\157\160\157\166\145\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\160\157\160\157\166\145\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157" + "\166\145\162\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\150" + "\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162\141" + "\151\163\145\144\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\056" + "\154\151\156\153\145\144\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\160\157\160\157\166\145\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\054\040\056\164\157\157\154" + "\142\141\162\040\160\157\160\157\166\145\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\054\040\150\145\141\144\145\162" + "\142\141\162\040\160\157\160\157\166\145\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\056" + "\154\151\156\153\145\144\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\156\157\164\145\142\157\157\153\040\076\040\150\145" + "\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141\162" + "\162\157\167\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050" + "\154\164\162\051\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\072\144\151\162\050\162\164\154\051\072" + "\146\151\162\163\164\055\143\150\151\154\144\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162" + "\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054" + "\040\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144" + "\055\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040" + "\157\166\145\162\154\141\171\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\054\040\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076" + "\040\164\141\142\163\040\076\040\141\162\162\157\167\072\141\143" + "\164\151\166\145\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\141\143\164\151\166\145\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144" + "\151\162\050\154\164\162\051\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\154\164" + "\162\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164" + "\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054\040" + "\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055" + "\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157" + "\166\145\162\154\141\171\072\141\143\164\151\166\145\054\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\054\040\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\063\051\073\040\175\012\012\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\160\157\160\157\166\145\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\160\157\160\157\166\145\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\054\040\056\164\157" + "\157\154\142\141\162\040\160\157\160\157\166\145\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\054\040\150\145\141" + "\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145" + "\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\160\157\160\157\166\145\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\160\157\160\157\166\145\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\056\154" + "\151\156\153\145\144\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164" + "\141\142\163\040\076\040\141\162\162\157\167\072\143\150\145\143" + "\153\145\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\154\164\162\051\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\143\157\154\157\162\163\167\141\164\143\150" + "\043\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157" + "\156\040\076\040\157\166\145\162\154\141\171\072\143\150\145\143" + "\153\145\144\054\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\063\051\073" + "\040\175\012\012\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160" + "\157\160\157\166\145\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\054\040\056\164\157\157\154\142\141\162\040\160\157\160" + "\157\166\145\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\054\040\150\145\141\144\145\162" + "\142\141\162\040\160\157\160\157\166\145\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076" + "\040\141\162\162\157\167\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051\072" + "\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\054\040\143\157\154\157\162\163\167\141\164\143\150\043" + "\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156" + "\040\076\040\157\166\145\162\154\141\171\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\054\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\063\065\051\073\040\175\012\012" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166" + "\145\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\160\157\160\157\166\145\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\054\040\056\164\157\157" + "\154\142\141\162\040\160\157\160\157\166\145\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145" + "\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056" + "\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160" + "\157\166\145\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\160\157\160\157\166\145\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\054\040\056\164\157\157\154\142\141\162\040\160\157\160" + "\157\166\145\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\054\040\150\145\141\144\145" + "\162\142\141\162\040\160\157\160\157\166\145\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\160\157\160\157\166\145\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151" + "\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157" + "\167\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164" + "\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054\040" + "\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055" + "\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157" + "\166\145\162\154\141\171\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\054\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162" + "\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\143\157\154\157\162\163\167\141\164" + "\143\150\043\141\144\144\055\143\157\154\157\162\055\142\165\164" + "\164\157\156\040\076\040\157\166\145\162\154\141\171\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\054\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\054\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\064\051\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163" + "\040\076\040\141\162\162\157\167\072\144\151\163\141\142\154\145" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\144\151\163\141\142\154\145\144\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\154\164\162\051\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\144\151\163\141\142\154\145\144\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143" + "\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\144\151\163\141\142\154\145\144\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157" + "\167\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143" + "\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\144\151\163\141\142\154\145\144\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\144\151\162\050\162\164\154\051\072\146\151\162\163" + "\164\055\143\150\151\154\144\054\040\143\157\154\157\162\163\167" + "\141\164\143\150\043\141\144\144\055\143\157\154\157\162\055\142" + "\165\164\164\157\156\040\076\040\157\166\145\162\154\141\171\072" + "\144\151\163\141\142\154\145\144\054\040\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\040\173\040\146\151\154\164" + "\145\162\072\040\157\160\141\143\151\164\171\050\060\056\064\051" + "\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040" + "\141\162\162\157\167\072\144\151\163\141\142\154\145\144\040\154" + "\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\040\154\141\142\145" + "\154\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164\162" + "\051\040\154\141\142\145\154\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\144\151\163\141\142\154\145\144\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\040\154\141\142\145\154\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\144\151\163\141\142\154" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\154\141\142\145\154\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144\040" + "\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\144\151\163\141\142\154\145\144\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\154\141\142\145\154\054\040" + "\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055" + "\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157" + "\166\145\162\154\141\171\072\144\151\163\141\142\154\145\144\040" + "\154\141\142\145\154\054\040\142\165\164\164\157\156\072\144\151" + "\163\141\142\154\145\144\040\154\141\142\145\154\040\173\040\146" + "\151\154\164\145\162\072\040\156\157\156\145\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164" + "\162\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150" + "\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164\154" + "\051\072\146\151\162\163\164\055\143\150\151\154\144\054\040\143" + "\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055\143" + "\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157\166" + "\145\162\154\141\171\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\054\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\040\173\040\155\151\156\055\167\151" + "\144\164\150\072\040\062\064\160\170\073\040\160\141\144\144\151" + "\156\147\055\154\145\146\164\072\040\065\160\170\073\040\160\141" + "\144\144\151\156\147\055\162\151\147\150\164\072\040\065\160\170" + "\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040" + "\141\162\162\157\167\056\164\145\170\164\055\142\165\164\164\157" + "\156\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\072\144\151\162\050\154\164\162\051\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\162\164\154" + "\051\072\146\151\162\163\164\055\143\150\151\154\144\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170\164" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150" + "\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\054\040\143\157\154\157\162" + "\163\167\141\164\143\150\043\141\144\144\055\143\157\154\157\162" + "\055\142\165\164\164\157\156\040\076\040\157\166\145\162\154\141" + "\171\056\164\145\170\164\055\142\165\164\164\157\156\054\040\142" + "\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157" + "\156\040\173\040\160\141\144\144\151\156\147\055\154\145\146\164" + "\072\040\061\067\160\170\073\040\160\141\144\144\151\156\147\055" + "\162\151\147\150\164\072\040\061\067\160\170\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167" + "\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\154\164\162\051\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157" + "\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051" + "\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162" + "\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\054\040\143\157\154\157\162\163\167\141\164\143\150\043\141" + "\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156\040" + "\076\040\157\166\145\162\154\141\171\056\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\054\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\072\144\151\162\050\154\164\162\051\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143" + "\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\144\151\162\050\154\164\162\051\072\154\141\163\164" + "\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\054\040\143\157\154\157\162\163\167\141\164\143\150\043" + "\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156" + "\040\076\040\157\166\145\162\154\141\171\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\054\040\142\165" + "\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\054\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\040\173\040\160\141\144\144\151\156" + "\147\055\154\145\146\164\072\040\071\160\170\073\040\160\141\144" + "\144\151\156\147\055\162\151\147\150\164\072\040\071\160\170\073" + "\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\040\076\040" + "\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\040\076\040" + "\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\154\164\162\051\040\076\040\142\157\170\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\072\144\151\162\050\162\164\154\051\072" + "\146\151\162\163\164\055\143\150\151\154\144\040\076\040\142\157" + "\170\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\157\170\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\154\164" + "\162\051\072\154\141\163\164\055\143\150\151\154\144\040\076\040" + "\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\040\076\040\142\157\170\054" + "\040\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144" + "\055\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040" + "\157\166\145\162\154\141\171\056\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\040\076\040\142\157\170\054\040\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163" + "\040\076\040\141\162\162\157\167\056\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\040\076\040\142\157\170\040\076\040\142\157\170\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170\164" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163" + "\164\055\143\150\151\154\144\040\076\040\142\157\170\040\076\040" + "\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\154\164\162\051\040\076\040\142\157\170\040\076\040\142" + "\157\170\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\040\076\040\142\157\170\040\076\040\142\157\170\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170\164" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\157\170\040\076\040\142\157\170\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144\040" + "\076\040\142\157\170\040\076\040\142\157\170\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162" + "\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\040\076\040\142\157\170\040\076\040\142\157\170\054\040\143" + "\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055\143" + "\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157\166" + "\145\162\154\141\171\056\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\040\076" + "\040\142\157\170\040\076\040\142\157\170\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\040\076" + "\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\040\076\040\142\157\170\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\154" + "\164\162\051\040\076\040\142\157\170\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162\164" + "\154\051\072\146\151\162\163\164\055\143\150\151\154\144\040\076" + "\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\157" + "\170\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162" + "\051\072\154\141\163\164\055\143\150\151\154\144\040\076\040\142" + "\157\170\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164" + "\154\051\072\146\151\162\163\164\055\143\150\151\154\144\040\076" + "\040\142\157\170\054\040\143\157\154\157\162\163\167\141\164\143" + "\150\043\141\144\144\055\143\157\154\157\162\055\142\165\164\164" + "\157\156\040\076\040\157\166\145\162\154\141\171\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\040\076" + "\040\142\157\170\054\040\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076" + "\040\141\162\162\157\167\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\040\076\040\142\157\170\040\076" + "\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\040\076\040\142\157\170\040\076\040\142\157\170" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\154\164\162\051\040\076\040\142\157\170\040" + "\076\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\072\144\151\162\050\162\164\154\051\072\146" + "\151\162\163\164\055\143\150\151\154\144\040\076\040\142\157\170" + "\040\076\040\142\157\170\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\157\170\040\076\040\142\157\170\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143" + "\150\151\154\144\040\076\040\142\157\170\040\076\040\142\157\170" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157" + "\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\144\151\162\050\162\164\154\051" + "\072\146\151\162\163\164\055\143\150\151\154\144\040\076\040\142" + "\157\170\040\076\040\142\157\170\054\040\143\157\154\157\162\163" + "\167\141\164\143\150\043\141\144\144\055\143\157\154\157\162\055" + "\142\165\164\164\157\156\040\076\040\157\166\145\162\154\141\171" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\040\076\040\142\157\170\040\076\040\142\157\170\054\040" + "\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\040" + "\076\040\142\157\170\054\040\142\165\164\164\157\156\056\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\040\076\040\142\157\170\040\076\040\142" + "\157\170\054\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\040\076\040\142" + "\157\170\054\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\040\076\040\142" + "\157\170\040\076\040\142\157\170\040\173\040\142\157\162\144\145" + "\162\055\163\160\141\143\151\156\147\072\040\064\160\170\073\040" + "\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145" + "\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141\162" + "\162\157\167\056\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\040\076\040\142" + "\157\170\040\076\040\154\141\142\145\154\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\040\076\040\142\157\170\040\076\040\154\141\142" + "\145\154\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\154\164\162\051\040\076\040\142\157\170\040\076\040\154\141" + "\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\040\076\040\142\157\170\040\076\040\154\141\142\145\154" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\164" + "\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\157\170\040\076\040\154\141\142\145\154\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143" + "\150\151\154\144\040\076\040\142\157\170\040\076\040\154\141\142" + "\145\154\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\040\076" + "\040\154\141\142\145\154\054\040\143\157\154\157\162\163\167\141" + "\164\143\150\043\141\144\144\055\143\157\154\157\162\055\142\165" + "\164\164\157\156\040\076\040\157\166\145\162\154\141\171\056\164" + "\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\040\076\040\142\157\170\040\076\040" + "\154\141\142\145\154\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\056\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040\154" + "\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\154\141\163\164\055\143\150\151\154\144\040\076" + "\040\142\157\170\040\076\040\142\157\170\040\076\040\154\141\142" + "\145\154\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\154\164\162\051\040\076\040\142\157\170\040\076\040\142\157" + "\170\040\076\040\154\141\142\145\154\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\040\076" + "\040\142\157\170\040\076\040\154\141\142\145\154\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\157\170\040\076\040\142\157\170\040\076\040\154\141\142\145" + "\154\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\144\151\162\050\154\164\162\051\072\154\141\163\164" + "\055\143\150\151\154\144\040\076\040\142\157\170\040\076\040\142" + "\157\170\040\076\040\154\141\142\145\154\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144" + "\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040\154" + "\141\142\145\154\054\040\143\157\154\157\162\163\167\141\164\143" + "\150\043\141\144\144\055\143\157\154\157\162\055\142\165\164\164" + "\157\156\040\076\040\157\166\145\162\154\141\171\056\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\040\076\040\142\157\170\040\076\040\142\157" + "\170\040\076\040\154\141\142\145\154\054\040\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164" + "\141\142\163\040\076\040\141\162\162\157\167\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\040\076\040" + "\142\157\170\040\076\040\154\141\142\145\154\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\040\076\040\142\157" + "\170\040\076\040\154\141\142\145\154\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164" + "\162\051\040\076\040\142\157\170\040\076\040\154\141\142\145\154" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\040\076\040\142\157\170\040\076\040\154\141" + "\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\157\170" + "\040\076\040\154\141\142\145\154\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150" + "\151\154\144\040\076\040\142\157\170\040\076\040\154\141\142\145" + "\154\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164\154" + "\051\072\146\151\162\163\164\055\143\150\151\154\144\040\076\040" + "\142\157\170\040\076\040\154\141\142\145\154\054\040\143\157\154" + "\157\162\163\167\141\164\143\150\043\141\144\144\055\143\157\154" + "\157\162\055\142\165\164\164\157\156\040\076\040\157\166\145\162" + "\154\141\171\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\040\076\040\142\157\170\040\076\040\154\141" + "\142\145\154\054\040\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040" + "\141\162\162\157\167\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\040\076\040\142\157\170\040\076\040" + "\142\157\170\040\076\040\154\141\142\145\154\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\040\076\040\142\157" + "\170\040\076\040\142\157\170\040\076\040\154\141\142\145\154\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\154\164\162\051\040\076\040\142\157\170\040\076" + "\040\142\157\170\040\076\040\154\141\142\145\154\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040" + "\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\157\170\040\076\040\142\157\170\040\076\040\154\141\142\145\154" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157" + "\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051" + "\072\154\141\163\164\055\143\150\151\154\144\040\076\040\142\157" + "\170\040\076\040\142\157\170\040\076\040\154\141\142\145\154\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\162\164\154\051\072" + "\146\151\162\163\164\055\143\150\151\154\144\040\076\040\142\157" + "\170\040\076\040\142\157\170\040\076\040\154\141\142\145\154\054" + "\040\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144" + "\055\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040" + "\157\166\145\162\154\141\171\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\040\076\040\142\157\170\040" + "\076\040\142\157\170\040\076\040\154\141\142\145\154\054\040\142" + "\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\040\076" + "\040\142\157\170\040\076\040\154\141\142\145\154\054\040\142\165" + "\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\040\076\040" + "\142\157\170\040\076\040\142\157\170\040\076\040\154\141\142\145" + "\154\054\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\040\076\040\142\157" + "\170\040\076\040\154\141\142\145\154\054\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\040\076\040\142\157\170\040\076\040\142\157\170\040" + "\076\040\154\141\142\145\154\040\173\040\160\141\144\144\151\156" + "\147\055\154\145\146\164\072\040\062\160\170\073\040\160\141\144" + "\144\151\156\147\055\162\151\147\150\164\072\040\062\160\170\073" + "\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163" + "\164\055\143\150\151\154\144\072\144\151\162\050\154\164\162\051" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050" + "\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162" + "\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054" + "\040\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144" + "\055\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040" + "\157\166\145\162\154\141\171\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\054\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\040\173\040\160\141\144\144" + "\151\156\147\055\154\145\146\164\072\040\071\160\170\073\040\160" + "\141\144\144\151\156\147\055\162\151\147\150\164\072\040\071\160" + "\170\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076" + "\040\141\162\162\157\167\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\040\076\040\142\157\170\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\040\076\040\142\157\170\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\072\144\151\162\050\154\164\162\051\040\076" + "\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143" + "\150\151\154\144\040\076\040\142\157\170\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\157\170\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\040\076\040\142\157\170\054\040\143\157\154" + "\157\162\163\167\141\164\143\150\043\141\144\144\055\143\157\154" + "\157\162\055\142\165\164\164\157\156\040\076\040\157\166\145\162" + "\154\141\171\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\040\076\040\142\157\170\054\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\040\076\040\142\157" + "\170\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151" + "\156\147\072\040\064\160\170\073\040\175\012\012\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\056\164\145\170\164\055\142" + "\165\164\164\157\156\040\076\040\142\157\170\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151" + "\154\144\040\076\040\142\157\170\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\157\170\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050\154" + "\164\162\051\072\154\141\163\164\055\143\150\151\154\144\040\076" + "\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\056" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\144\151\162\050\162\164\154\051\072\146\151\162\163" + "\164\055\143\150\151\154\144\040\076\040\142\157\170\054\040\143" + "\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055\143" + "\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157\166" + "\145\162\154\141\171\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\056\164\145\170\164\055\142\165\164\164\157\156\040\076" + "\040\142\157\170\054\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\056\164\145\170\164\055\142" + "\165\164\164\157\156\040\076\040\142\157\170\040\173\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\064\160" + "\170\073\040\175\012\012\144\162\157\160\144\157\167\156\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\040\142\165\164\164" + "\157\156\056\143\157\155\142\157\054\040\143\157\155\142\157\142" + "\157\170\072\144\162\157\160\050\141\143\164\151\166\145\051\040" + "\142\165\164\164\157\156\056\143\157\155\142\157\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\056\143\154\157\163\145\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\054\040\056\164\157\157\154\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\144\162\157" + "\160\050\141\143\164\151\166\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\144\162\157\160\050\141\143\164\151\166\145\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\144\162\157\160\050\141\143\164\151\166\145\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\144\162\157\160\050\141\143\164\151\166\145\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\144\162\157" + "\160\050\141\143\164\151\166\145\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\144\162\157\160\050\141\143\164\151" + "\166\145\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\144\162\157\160\050\141\143\164\151\166\145\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\144\162\157\160\050\141\143\164\151" + "\166\145\051\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\167\151\156\144\157\167" + "\056\144\151\141\154\157\147\056\155\145\163\163\141\147\145\056" + "\143\163\144\040\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\141\162\145\141\040\076\040\142\165\164\164\157\156" + "\072\144\162\157\160\050\141\143\164\151\166\145\051\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170\056" + "\143\151\162\143\165\154\141\162\055\142\165\164\164\157\156\163" + "\040\142\165\164\164\157\156\056\143\151\162\143\165\154\141\162" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155\157" + "\144\145\154\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142" + "\157\170\056\151\156\154\151\156\145\055\142\165\164\164\157\156" + "\163\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\054\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\076\040\142\165\164\164\157\156\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\054\040\146\151\154\145\143\150\157\157\163" + "\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040\076" + "\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040\142" + "\157\170\040\076\040\142\165\164\164\157\156\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\054\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\054\040\142\165\164\164\157\156\056\163\151\144\145\142" + "\141\162\055\142\165\164\164\157\156\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\054\040\142\165\164\164\157\156\056\145" + "\155\157\152\151\055\163\145\143\164\151\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\151\156\146\157\142\141\162\040\056\143\154\157\163\145" + "\072\144\162\157\160\050\141\143\164\151\166\145\051\054\040\143" + "\141\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162" + "\040\076\040\142\165\164\164\157\156\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\144\162\157\160\050\141\143\164\151\166\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\072\144\162\157\160\050\141\143\164\151" + "\166\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\144\162\157\160\050\141\143\164\151\166\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145" + "\051\054\040\155\145\156\165\142\165\164\164\157\156\056\146\154" + "\141\164\040\076\040\142\165\164\164\157\156\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\054\040\142\165\164\164\157\156" + "\056\146\154\141\164\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\054\040\155\145\156\165\142\165\164\164\157\156\056\157" + "\163\144\040\076\040\142\165\164\164\157\156\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\054\040\142\165\164\164\157\156" + "\056\157\163\144\072\144\162\157\160\050\141\143\164\151\166\145" + "\051\054\040\156\157\164\145\142\157\157\153\040\076\040\150\145" + "\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141\162" + "\162\157\167\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\072\144\151\162\050\154\164\162\051\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162" + "\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\144\162\157\160\050\141\143\164\151\166\145\051\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164" + "\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054\040" + "\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055" + "\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157" + "\166\145\162\154\141\171\072\144\162\157\160\050\141\143\164\151" + "\166\145\051\054\040\142\165\164\164\157\156\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\040\173\040\143\157\154\157\162" + "\072\040\100\141\143\143\145\156\164\137\142\147\137\143\157\154" + "\157\162\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\060\040\060\040\060\040\062\160\170\040" + "\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162" + "\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156\056" + "\157\163\144\040\076\040\142\165\164\164\157\156\054\040\142\165" + "\164\164\157\156\056\157\163\144\040\173\040\155\151\156\055\167" + "\151\144\164\150\072\040\063\062\160\170\073\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\063\062\160\170\073\040\143\157" + "\154\157\162\072\040\162\147\142\141\050\062\065\065\054\040\062" + "\065\065\054\040\062\065\065\054\040\060\056\071\051\073\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\066\065\051\073\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\060\040\060\040\060\040\061\160\170\040\143\165\162\162" + "\145\156\164\103\157\154\157\162\073\040\175\012\012\155\145\156" + "\165\142\165\164\164\157\156\056\157\163\144\040\076\040\142\165" + "\164\164\157\156\054\040\142\165\164\164\157\156\056\157\163\144" + "\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163\157" + "\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\065\160\170\073\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154" + "\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\142\141\143\153\147\162\157\165\156\144\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\142\157\170\055\163\150\141\144" + "\157\167\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175" + "\012\012\155\145\156\165\142\165\164\164\157\156\056\157\163\144" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\142" + "\165\164\164\157\156\056\157\163\144\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\054\060\056\070\051\073\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\061\160\170" + "\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156\056" + "\157\163\144\040\076\040\142\165\164\164\157\156\072\150\157\166" + "\145\162\054\040\142\165\164\164\157\156\056\157\163\144\072\150" + "\157\166\145\162\040\173\040\143\157\154\157\162\072\040\167\150" + "\151\164\145\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\155\151\170" + "\050\142\154\141\143\153\054\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\065\051\054\060\056\066\065\051\073" + "\040\175\012\012\155\145\156\165\142\165\164\164\157\156\056\157" + "\163\144\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\163\144\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\142\165\164\164\157\156\056\157\163\144\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054" + "\040\142\165\164\164\157\156\056\157\163\144\072\141\143\164\151" + "\166\145\040\173\040\143\157\154\157\162\072\040\167\150\151\164" + "\145\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\155\151\170\050\142" + "\154\141\143\153\054\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\062\065\051\054\060\056\066\065\051\073\040\175" + "\012\012\155\145\156\165\142\165\164\164\157\156\056\157\163\144" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\142\165\164\164\157\156\056\157\163\144\072\143\150" + "\145\143\153\145\144\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\155\151\170\050\142\154\141\143\153\054\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\062\051\054\060\056\066\065" + "\051\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156" + "\056\157\163\144\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\054\040\142\165\164" + "\164\157\156\056\157\163\144\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\155\151\170\050\142\154\141\143\153\054\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\062\065\051\054\060\056\066" + "\065\051\073\040\175\012\012\155\145\156\165\142\165\164\164\157" + "\156\056\157\163\144\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\163\144\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\054\040\142\165\164\164\157\156\056\157\163\144\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\054\040\142\165\164\164" + "\157\156\056\157\163\144\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\155\151\170\050\142\154\141\143\153\054\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\063\065\051\054\060\056\066" + "\065\051\073\040\175\012\012\155\145\156\165\142\165\164\164\157" + "\156\056\157\163\144\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\056\157\163\144\040\142\165\164\164\157\156\056" + "\157\163\144\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156" + "\145\055\143\157\154\157\162\072\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\065" + "\051\073\040\175\012\012\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\054\040\163\160\154\151\164" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\054\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\054\040" + "\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\040\076\040\142\165\164\164\157\156\054\040\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\054\040\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\054\040" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\156\157\156\145" + "\073\040\175\012\012\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\054\040\163\160\154\151\164" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\054\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\054\040\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\054\040\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\054\040\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\173\040\157" + "\165\164\154\151\156\145\072\040\060\040\163\157\154\151\144\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\065\160\170" + "\073\040\164\162\141\156\163\151\164\151\157\156\072\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\167\151\144\164\150\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\142\141\143" + "\153\147\162\157\165\156\144\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\142\157\170\055\163\150\141\144\157\167\040\062" + "\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145" + "\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056" + "\064\065\054\040\060\056\071\064\051\073\040\175\012\012\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\157\160" + "\141\161\165\145\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143" + "\143\145\156\164\137\143\157\154\157\162\054\060\056\070\051\073" + "\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072\040" + "\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\072\040\061\160\170\073\040\175\012\012\056\157\163" + "\144\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\157\163\144\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\157\163\144\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\056\157\163\144\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\150\145\141\144\145\162\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\056\157" + "\163\144\040\155\145\156\165\142\165\164\164\157\156\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\157\163\144\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\157\163" + "\144\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\157\163\144\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\157\163\144\040\155\145\156" + "\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\056\157\163\144" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\157\163\144\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\056\157\163\144\040\155\145\156\165\142" + "\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\157\163\144\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\157\163\144\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\157\160" + "\141\161\165\145\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\157\163\144\040\155\145\156" + "\165\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\056\157\163\144\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\157\163\144\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\056\157\163\144" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\157\163\144\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\056\157\163\144\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\056\157\163\144\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056" + "\157\163\144\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\056\157\163\144\040\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\056\157\163" + "\144\040\142\165\164\164\157\156\056\157\160\141\161\165\145\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\040\173\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\072\040\162\147\142\141\050\062\065\065\054\040\062" + "\065\065\054\040\062\065\065\054\040\060\056\065\051\073\040\175" + "\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145\040" + "\076\040\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\157\160" + "\141\161\165\145\040\076\040\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\150\157\166\145\162\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\150\157\166\145\162\054\040\163\160\154\151\164" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\054\040\155\145\156\165\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\150\157\166" + "\145\162\054\040\155\145\156\165\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\072\150\157" + "\166\145\162\054\040\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\072\150" + "\157\166\145\162\054\040\142\165\164\164\157\156\056\157\160\141" + "\161\165\145\072\150\157\166\145\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155" + "\141\147\145\050\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\051\051\073\040\175\012" + "\012\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141" + "\161\165\145\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\054\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\054\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\054\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\054\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\054\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\157\160\141\161\165\145\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\054\040\155\145\156\165\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040" + "\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\054\040\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\072\141\143\164\151\166" + "\145\054\040\142\165\164\164\157\156\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\072\141\143\164" + "\151\166\145\054\040\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\072\141\143\164\151\166\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155" + "\141\147\145\050\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\062\051\051\073\040\175\012\012\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\157\160\141" + "\161\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\054\040\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\072\143\150\145\143\153\145\144\054\040\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\072\143\150\145\143\153\145\144\054\040\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\072\143\150\145\143" + "\153\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\151\155\141\147\145\050\162\147" + "\142\141\050\060\054\040\060\054\040\060\054\040\060\056\061\065" + "\051\051\073\040\175\012\012\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\054\040\155\145\156\165\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\054\040\155\145\156\165\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\054\040\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\054\040\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\054\040\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147" + "\145\072\040\151\155\141\147\145\050\162\147\142\141\050\060\054" + "\040\060\054\040\060\054\040\060\056\060\065\051\051\073\040\175" + "\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\054\040\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\054\040\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\054\040\163\160\154\151\164" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\054\040\155\145\156\165\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\054\040\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\054\040\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\054\040\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151" + "\155\141\147\145\050\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\063\051\051\073\040\175\012\012\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\155" + "\151\170\050\100\167\151\156\144\157\167\137\142\147\137\143\157" + "\154\157\162\054\100\167\151\156\144\157\167\137\146\147\137\143" + "\157\154\157\162\054\060\056\061\065\051\073\040\143\157\154\157" + "\162\072\040\100\167\151\156\144\157\167\137\146\147\137\143\157" + "\154\157\162\073\040\175\012\012\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\173\040\143\157\154\157\162\072\040\100\144\145\163\164" + "\162\165\143\164\151\166\145\137\146\147\137\143\157\154\157\162" + "\073\040\175\012\012\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\054\040" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\072\143\150\145\143\153\145" + "\144\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\100\144\145\163\164\162\165\143\164\151" + "\166\145\137\142\147\137\143\157\154\157\162\073\040\175\012\012" + "\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\040\173\040\143\157\154\157\162\072" + "\040\100\141\143\143\145\156\164\137\146\147\137\143\157\154\157" + "\162\073\040\175\012\012\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\054\040\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\072\143\150\145\143\153\145\144\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\143\154\157\163\145\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\054\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076" + "\040\164\141\142\163\040\076\040\141\162\162\157\167\054\040\167" + "\151\156\144\157\167\056\144\151\141\154\157\147\056\155\145\163" + "\163\141\147\145\056\143\163\144\040\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\141\162\145\141\040\076\040\142" + "\165\164\164\157\156\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162" + "\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056" + "\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\054\040\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\142\157\170\056\151\156" + "\154\151\156\145\055\142\165\164\164\157\156\163\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\155\157\144\145\154\054\040\146\151\154\145\143\150\157\157" + "\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\142\165\164\164\157\156\054\040\146\151\154\145\143\150\157\157" + "\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\054\040\146\151" + "\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142" + "\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040" + "\142\157\170\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\054\040\142\165\164\164\157" + "\156\056\163\151\144\145\142\141\162\055\142\165\164\164\157\156" + "\054\040\142\165\164\164\157\156\056\145\155\157\152\151\055\163" + "\145\143\164\151\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\151" + "\156\146\157\142\141\162\040\056\143\154\157\163\145\054\040\143" + "\141\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162" + "\040\076\040\142\165\164\164\157\156\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\054" + "\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\054\040\056\164\157\157\154\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154\141" + "\164\040\076\040\142\165\164\164\157\156\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\146\154\141\164\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\054\040\155\145\156\165\142\165\164\164\157\156\056\146" + "\154\141\164\040\076\040\142\165\164\164\157\156\054\040\142\165" + "\164\164\157\156\056\146\154\141\164\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\175\012\012\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\143\154\157\163\145\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167\054" + "\040\167\151\156\144\157\167\056\144\151\141\154\157\147\056\155" + "\145\163\163\141\147\145\056\143\163\144\040\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\141\162\145\141\040\076" + "\040\142\165\164\164\157\156\054\040\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\142\157\170\056\143\151\162\143\165\154" + "\141\162\055\142\165\164\164\157\156\163\040\142\165\164\164\157" + "\156\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\155\157\144\145\154\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170\056" + "\151\156\154\151\156\145\055\142\165\164\164\157\156\163\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\155\157\144\145\154\054\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\076\040\142\165\164\164\157\156\054\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\076\040\142\157\170\040\076\040\142\165\164\164\157\156\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164" + "\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\054\040\142\165\164" + "\164\157\156\056\163\151\144\145\142\141\162\055\142\165\164\164" + "\157\156\054\040\142\165\164\164\157\156\056\145\155\157\152\151" + "\055\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\151\156\146\157\142\141\162\040\056\143\154\157\163\145\054" + "\040\143\141\154\145\156\144\141\162\040\076\040\150\145\141\144" + "\145\162\040\076\040\142\165\164\164\157\156\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\054\040\056\164\157\157\154\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\054\040\056\164\157\157\154\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146" + "\154\141\164\040\076\040\142\165\164\164\157\156\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\146\154\141\164\040\076\040\142\165\164\164\157\156\054\040" + "\142\165\164\164\157\156\056\146\154\141\164\040\173\040\157\165" + "\164\154\151\156\145\072\040\060\040\163\157\154\151\144\040\164" + "\162\141\156\163\160\141\162\145\156\164\073\040\157\165\164\154" + "\151\156\145\055\157\146\146\163\145\164\072\040\064\160\170\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\157\165\164" + "\154\151\156\145\055\143\157\154\157\162\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\142\141\143\153" + "\147\162\157\165\156\144\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\142\157\170\055\163\150\141\144\157\167\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\143\154\157\163\145\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040" + "\076\040\164\141\142\163\040\076\040\141\162\162\157\167\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\167\151\156\144\157\167\056\144\151\141\154\157" + "\147\056\155\145\163\163\141\147\145\056\143\163\144\040\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\141\162\145" + "\141\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\160\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170" + "\056\143\151\162\143\165\154\141\162\055\142\165\164\164\157\156" + "\163\040\142\165\164\164\157\156\056\143\151\162\143\165\154\141" + "\162\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155" + "\157\144\145\154\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\142\157\170\056\151\156\154\151\156" + "\145\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155\157" + "\144\145\154\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\146\151\154\145\143\150\157" + "\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170" + "\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\146\151\154" + "\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142\141" + "\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040\142" + "\157\170\040\076\040\142\157\170\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\146\151\154\145\143\150\157\157\163" + "\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040\076" + "\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\142\165\164\164\157\156\056\163" + "\151\144\145\142\141\162\055\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\142\165\164\164\157\156\056\145\155\157\152\151\055" + "\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\151\156\146\157\142\141\162\040\056\143\154\157" + "\163\145\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\143\141\154\145\156\144\141\162" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\054\040\056\164\157\157\154\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\056\164\157\157\154\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\155\145\156\165\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\142\165\164\164\157\156\056\146\154" + "\141\164\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\054\060\056\070\051" + "\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072" + "\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\055\062\160\170\073\040\175\012\012\056" + "\157\163\144\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056" + "\143\154\157\163\145\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\157\163\144\040\056\143\154\157\163" + "\145\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\157\163\144\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\157\163\144\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\056\164\157\157\154\142\141\162\040\056\157" + "\163\144\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\056\157\163\144\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\150\145\141\144\145\162\142\141\162\040\056\157\163\144" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\056\157\163\144\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\157\163\144\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\157\163\144\040\056\164\157\157" + "\154\142\141\162\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\157\163\144\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\056\157\163\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\157\163\144\040\150\145\141\144\145\162\142\141\162\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\056\157\163\144\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\157\163\144\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\157\163\144\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\157\163\144\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\157\163\144\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\157\163\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\056\157\163\144\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\150\145\141\144\145\162\142\141\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\056\157\163" + "\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\157\163\144\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\157\163" + "\144\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\157\163\144\040\056\164\157\157\154\142" + "\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056\157" + "\163\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\056\157\163\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\150\145\141\144\145\162\142\141\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\056\157\163\144\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\157\163\144\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\157\163\144\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\157\163\144\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\056\157\163\144\040\167\151\156\144\157\167\056\144\151" + "\141\154\157\147\056\155\145\163\163\141\147\145\056\143\163\144" + "\040\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\141\162\145\141\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\167\151\156\144\157\167\056\144\151\141\154\157\147" + "\056\155\145\163\163\141\147\145\056\143\163\144\040\056\157\163" + "\144\040\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\141\162\145\141\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\056\157\163\144\040\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\142\157\170\056\143\151\162\143\165\154" + "\141\162\055\142\165\164\164\157\156\163\040\142\165\164\164\157" + "\156\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\155\157\144\145\154\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\142\157\170\056\143\151\162\143\165\154\141\162\055\142\165\164" + "\164\157\156\163\040\056\157\163\144\040\142\165\164\164\157\156" + "\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\155\157\144\145\154\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\056\157\163\144\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\151\156\154\151\156\145\055\142" + "\165\164\164\157\156\163\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\155\157\144\145\154" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\151\156\154\151\156\145\055\142\165" + "\164\164\157\156\163\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155" + "\157\144\145\154\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040\146" + "\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150" + "\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076" + "\040\142\157\170\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\146\151\154\145\143\150\157\157\163\145\162\040\056" + "\157\163\144\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\056\157\163\144" + "\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141" + "\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153" + "\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\146\151\154\145\143" + "\150\157\157\163\145\162\040\056\157\163\144\040\043\160\141\164" + "\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\040\076\040\142\157\170\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040\146" + "\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150" + "\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076" + "\040\142\157\170\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\056\157\163\144" + "\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\054\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\163\151\144\145\142\141\162\055\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\054\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\145\155\157\152\151\055\163\145\143\164\151\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\157\163\144" + "\040\151\156\146\157\142\141\162\040\056\143\154\157\163\145\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\151\156\146\157\142\141\162\040\056\157\163" + "\144\040\056\143\154\157\163\145\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056\157" + "\163\144\040\143\141\154\145\156\144\141\162\040\076\040\150\145" + "\141\144\145\162\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\056\157\163\144\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040" + "\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\157\163\144\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\157\163\144" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\056\164\157\157\154\142\141\162\040\056\157" + "\163\144\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\150\145\141\144\145\162" + "\142\141\162\040\056\157\163\144\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\056\157\163" + "\144\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056\157" + "\163\144\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056" + "\157\163\144\040\056\164\157\157\154\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\056\157\163\144\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\056\157\163\144\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\056\164\157\157\154\142\141\162\040\056\157\163\144\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056" + "\157\163\144\040\150\145\141\144\145\162\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\150" + "\145\141\144\145\162\142\141\162\040\056\157\163\144\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056" + "\157\163\144\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\146\154\141\164\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\056\157\163\144\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\056\157\163\144\040\155\145\156\165\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\142\165\164\164" + "\157\156\056\146\154\141\164\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\040\173\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\072\040\162\147\142" + "\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054" + "\040\060\056\065\051\073\040\175\012\012\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\143\154\157\163\145\072\150\157\166\145" + "\162\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\150\157\166\145\162\054\040\056\164\157" + "\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\150\157\166\145\162\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\150\157\166" + "\145\162\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\150\157\166\145\162\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\150\157\166\145\162\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157" + "\167\072\150\157\166\145\162\054\040\167\151\156\144\157\167\056" + "\144\151\141\154\157\147\056\155\145\163\163\141\147\145\056\143" + "\163\144\040\056\144\151\141\154\157\147\055\141\143\164\151\157" + "\156\055\141\162\145\141\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162" + "\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056" + "\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\072\150\157\166\145" + "\162\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\142\157\170\056\151\156\154\151\156\145\055\142\165\164\164\157" + "\156\163\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\155\157\144\145\154\072\150\157\166" + "\145\162\054\040\146\151\154\145\143\150\157\157\163\145\162\040" + "\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163\164" + "\141\143\153\040\076\040\142\157\170\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\054\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\076\040\142\157\170\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\146\151\154\145\143\150\157\157\163\145" + "\162\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040" + "\163\164\141\143\153\040\076\040\142\157\170\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\054\040\142\165\164\164\157\156\056" + "\163\151\144\145\142\141\162\055\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\142\165\164\164\157\156\056\145\155\157" + "\152\151\055\163\145\143\164\151\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\151\156\146\157\142\141\162" + "\040\056\143\154\157\163\145\072\150\157\166\145\162\054\040\143" + "\141\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162" + "\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145" + "\162\054\040\056\164\157\157\154\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\150\157\166\145\162\054\040\056\164" + "\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156" + "\072\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\146\154\141\164\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\143\154\157\163\145\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\054\040\167\151\156" + "\144\157\167\056\144\151\141\154\157\147\056\155\145\163\163\141" + "\147\145\056\143\163\144\040\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\141\162\145\141\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\054\040\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\142\157\170\056\143\151\162\143\165\154" + "\141\162\055\142\165\164\164\157\156\163\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\143\151\162\143\165\154\141\162\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\155\157\144\145" + "\154\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\142\157\170\056\151\156\154\151\156\145\055\142\165\164\164\157" + "\156\163\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\155\157\144\145\154" + "\054\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160" + "\141\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143" + "\153\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\054\040\146\151\154\145\143\150\157\157\163\145" + "\162\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040" + "\163\164\141\143\153\040\076\040\142\157\170\040\076\040\142\157" + "\170\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164" + "\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\163\151\144\145" + "\142\141\162\055\142\165\164\164\157\156\054\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\145\155\157\152\151\055\163\145\143" + "\164\151\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\151\156\146" + "\157\142\141\162\040\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\143\154\157\163\145\054" + "\040\143\141\154\145\156\144\141\162\040\076\040\150\145\141\144" + "\145\162\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\056" + "\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\054\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\146\154\141\164\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\054\040\155\145\156\165\142\165\164\164\157\156\056\146\154\141" + "\164\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\056\143\154\157\163" + "\145\072\141\143\164\151\166\145\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\054\040\056\164\157\157\154\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\072\141\143\164\151\166" + "\145\054\040\167\151\156\144\157\167\056\144\151\141\154\157\147" + "\056\155\145\163\163\141\147\145\056\143\163\144\040\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\141\162\145\141" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142" + "\157\170\056\143\151\162\143\165\154\141\162\055\142\165\164\164" + "\157\156\163\040\142\165\164\164\157\156\056\143\151\162\143\165" + "\154\141\162\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\155\157\144\145\154\072\141\143\164\151\166\145\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170\056" + "\151\156\154\151\156\145\055\142\165\164\164\157\156\163\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\155\157\144\145\154\072\141\143\164\151\166\145\054" + "\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141" + "\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153" + "\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\054\040\146\151\154\145\143\150\157\157" + "\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\146\151\154\145\143\150\157\157\163\145\162" + "\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\054\040\142\165\164\164\157\156\056" + "\163\151\144\145\142\141\162\055\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\054\040\142\165\164\164\157\156\056\145\155" + "\157\152\151\055\163\145\143\164\151\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\151\156\146\157\142" + "\141\162\040\056\143\154\157\163\145\072\141\143\164\151\166\145" + "\054\040\143\141\154\145\156\144\141\162\040\076\040\150\145\141" + "\144\145\162\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\054\040\056\164\157\157\154\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\054\040\150\145\141\144\145\162\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\054\040\056\164\157\157\154\142\141\162" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\150\145\141\144\145\162\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146" + "\154\141\164\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\146\154\141\164\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\054\040\155\145\156\165\142\165\164\164\157\156\056\146" + "\154\141\164\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\143\154\157\163\145\072\143\150\145\143\153\145\144\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\054\040\056\164" + "\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\156\157\164\145\142\157\157\153\040\076\040\150\145\141" + "\144\145\162\040\076\040\164\141\142\163\040\076\040\141\162\162" + "\157\167\072\143\150\145\143\153\145\144\054\040\167\151\156\144" + "\157\167\056\144\151\141\154\157\147\056\155\145\163\163\141\147" + "\145\056\143\163\144\040\056\144\151\141\154\157\147\055\141\143" + "\164\151\157\156\055\141\162\145\141\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\054\040\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\142\157\170\056\143\151\162" + "\143\165\154\141\162\055\142\165\164\164\157\156\163\040\142\165" + "\164\164\157\156\056\143\151\162\143\165\154\141\162\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\155\157\144\145\154" + "\072\143\150\145\143\153\145\144\054\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\142\157\170\056\151\156\154\151\156" + "\145\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155\157" + "\144\145\154\072\143\150\145\143\153\145\144\054\040\146\151\154" + "\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142\141" + "\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040\142" + "\157\170\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\054\040\146\151\154\145\143\150\157\157\163\145\162" + "\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\040\076\040\142\157\170" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\146\151\154\145\143\150\157\157\163\145\162\040\043" + "\160\141\164\150\142\141\162\142\157\170\040\076\040\163\164\141" + "\143\153\040\076\040\142\157\170\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\054\040\142\165\164\164\157\156\056\163" + "\151\144\145\142\141\162\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\054\040\142\165\164\164\157\156\056\145\155" + "\157\152\151\055\163\145\143\164\151\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\151\156\146\157" + "\142\141\162\040\056\143\154\157\163\145\072\143\150\145\143\153" + "\145\144\054\040\143\141\154\145\156\144\141\162\040\076\040\150" + "\145\141\144\145\162\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\054\040\056\164" + "\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\054\040\150" + "\145\141\144\145\162\142\141\162\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\054\040\150" + "\145\141\144\145\162\142\141\162\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154\141" + "\164\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\146\154\141\164" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\142\165\164\164\157\156\056\146\154\141\164\072\150" + "\157\166\145\162\054\040\142\165\164\164\157\156\056\146\154\141" + "\164\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\054\040\142\165\164\164\157\156\056\146\154" + "\141\164\072\141\143\164\151\166\145\054\040\142\165\164\164\157" + "\156\056\146\154\141\164\072\143\150\145\143\153\145\144\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\060\040\060\040\060\040\061\160\170\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\175\012\012\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\056\143\154\157\163\145\072\150\157\166\145\162" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\150\157\166\145\162\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\150\157\166\145\162\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145" + "\162\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\150\157\166\145" + "\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\150\157\166\145\162\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167" + "\072\150\157\166\145\162\054\040\167\151\156\144\157\167\056\144" + "\151\141\154\157\147\056\155\145\163\163\141\147\145\056\143\163" + "\144\040\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\141\162\145\141\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162\055" + "\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056\143" + "\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\155\157\144\145\154\072\150\157\166\145\162" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142" + "\157\170\056\151\156\154\151\156\145\055\142\165\164\164\157\156" + "\163\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\072\150\157\166\145" + "\162\054\040\146\151\154\145\143\150\157\157\163\145\162\040\043" + "\160\141\164\150\142\141\162\142\157\170\040\076\040\163\164\141" + "\143\153\040\076\040\142\157\170\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\054\040\146\151\154\145\143\150\157" + "\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170" + "\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076" + "\040\142\157\170\040\076\040\142\165\164\164\157\156\072\150\157" + "\166\145\162\054\040\146\151\154\145\143\150\157\157\163\145\162" + "\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\150\157\166\145\162\054\040\142\165\164\164\157\156\056\163" + "\151\144\145\142\141\162\055\142\165\164\164\157\156\072\150\157" + "\166\145\162\054\040\142\165\164\164\157\156\056\145\155\157\152" + "\151\055\163\145\143\164\151\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\151\156\146\157\142\141\162\040" + "\056\143\154\157\163\145\072\150\157\166\145\162\054\040\143\141" + "\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162\040" + "\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054" + "\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\150\157\166\145\162\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\072\150\157\166\145\162\054\040\056\164\157" + "\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\054\040\150\145\141\144\145\162\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\146\154\141\164\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\150\157" + "\166\145\162\054\040\155\145\156\165\142\165\164\164\157\156\056" + "\146\154\141\164\040\076\040\142\165\164\164\157\156\072\150\157" + "\166\145\162\054\040\142\165\164\164\157\156\056\146\154\141\164" + "\072\150\157\166\145\162\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\060\067\051\073\040\175" + "\012\012\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\143\154\157\163\145\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\141\162\162\157\167\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\156\157\164\145\142\157\157\153\040\076\040\150\145" + "\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141\162" + "\162\157\167\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\054\040\167\151\156\144\157\167\056" + "\144\151\141\154\157\147\056\155\145\163\163\141\147\145\056\143" + "\163\144\040\056\144\151\141\154\157\147\055\141\143\164\151\157" + "\156\055\141\162\145\141\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\054\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\142\157\170\056\143\151\162\143\165\154\141\162\055\142" + "\165\164\164\157\156\163\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\155\157\144\145\154\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170\056" + "\151\156\154\151\156\145\055\142\165\164\164\157\156\163\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\155\157\144\145\154\054\040\146\151" + "\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142" + "\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\054\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160" + "\141\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143" + "\153\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\146\151\154\145" + "\143\150\157\157\163\145\162\040\043\160\141\164\150\142\141\162" + "\142\157\170\040\076\040\163\164\141\143\153\040\076\040\142\157" + "\170\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\054\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\163\151\144\145\142\141\162\055" + "\142\165\164\164\157\156\054\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\145\155\157\152\151\055\163\145\143\164\151\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\151\156\146\157\142\141\162" + "\040\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\143\154\157\163\145\054\040\143\141\154" + "\145\156\144\141\162\040\076\040\150\145\141\144\145\162\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\054\040\056\164\157\157\154" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\054\040\150\145\141\144\145\162\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\054\040\056\164" + "\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\054\040\150\145\141\144\145\162\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146" + "\154\141\164\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154" + "\141\164\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\054\040\155\145" + "\156\165\142\165\164\164\157\156\056\146\154\141\164\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\143\154\157\163\145\072\141\143" + "\164\151\166\145\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\054\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076" + "\040\141\162\162\157\167\072\141\143\164\151\166\145\054\040\167" + "\151\156\144\157\167\056\144\151\141\154\157\147\056\155\145\163" + "\163\141\147\145\056\143\163\144\040\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\141\162\145\141\040\076\040\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\142\157\170\056\143" + "\151\162\143\165\154\141\162\055\142\165\164\164\157\156\163\040" + "\142\165\164\164\157\156\056\143\151\162\143\165\154\141\162\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\155\157\144" + "\145\154\072\141\143\164\151\166\145\054\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\142\157\170\056\151\156\154\151" + "\156\145\055\142\165\164\164\157\156\163\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155" + "\157\144\145\154\072\141\143\164\151\166\145\054\040\146\151\154" + "\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142\141" + "\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040\142" + "\157\170\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\054\040\146\151\154\145\143\150\157\157\163\145\162\040" + "\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163\164" + "\141\143\153\040\076\040\142\157\170\040\076\040\142\157\170\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141" + "\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153" + "\040\076\040\142\157\170\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\142\165\164\164\157\156\056\163\151\144\145" + "\142\141\162\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\054\040\142\165\164\164\157\156\056\145\155\157\152\151\055" + "\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\151\156\146\157\142\141\162\040\056" + "\143\154\157\163\145\072\141\143\164\151\166\145\054\040\143\141" + "\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\056\164\157\157\154\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\150\145\141\144\145\162\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\054\040\056\164\157\157\154\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154\141" + "\164\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040" + "\155\145\156\165\142\165\164\164\157\156\056\146\154\141\164\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\142\165\164\164\157\156\056\146\154\141\164\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\054\040\142\165\164\164\157\156\056\146\154\141\164\072\141\143" + "\164\151\166\145\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\061\066\051\073\040\175\012\012" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\056\143\154\157\163" + "\145\072\143\150\145\143\153\145\144\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\150\145\141\144\145\162\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076" + "\040\164\141\142\163\040\076\040\141\162\162\157\167\072\143\150" + "\145\143\153\145\144\054\040\167\151\156\144\157\167\056\144\151" + "\141\154\157\147\056\155\145\163\163\141\147\145\056\143\163\144" + "\040\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\141\162\145\141\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162" + "\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056" + "\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\072\143\150\145\143" + "\153\145\144\054\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\142\157\170\056\151\156\154\151\156\145\055\142\165\164" + "\164\157\156\163\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\155\157\144\145\154\072\143" + "\150\145\143\153\145\144\054\040\146\151\154\145\143\150\157\157" + "\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164" + "\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\040\076\040\142\157\170\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\054\040\146\151" + "\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142" + "\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040" + "\142\157\170\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\142\165\164\164\157\156\056\163\151\144\145\142\141" + "\162\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\054\040\142\165\164\164\157\156\056\145\155\157\152\151\055\163" + "\145\143\164\151\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\151\156\146\157\142\141\162\040\056" + "\143\154\157\163\145\072\143\150\145\143\153\145\144\054\040\143" + "\141\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\054\040\056\164\157\157\154\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\054\040\056\164\157\157" + "\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\146\154\141\164\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\146\154\141\164\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\146\154\141\164\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\054\040\142\165" + "\164\164\157\156\056\146\154\141\164\072\143\150\145\143\153\145" + "\144\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\061\051\073\040\175\012\012\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\143\154\157\163\145\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\054\040\056\164\157\157\154\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\054\040\150\145\141\144\145\162" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164" + "\141\142\163\040\076\040\141\162\162\157\167\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\054\040\167\151\156\144\157" + "\167\056\144\151\141\154\157\147\056\155\145\163\163\141\147\145" + "\056\143\163\144\040\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\141\162\145\141\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142\157" + "\170\056\143\151\162\143\165\154\141\162\055\142\165\164\164\157" + "\156\163\040\142\165\164\164\157\156\056\143\151\162\143\165\154" + "\141\162\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\155\157\144\145\154\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\054\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\142\157\170\056\151\156\154\151\156\145\055\142\165\164" + "\164\157\156\163\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\155\157\144\145\154\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\054\040\146\151" + "\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142" + "\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\054\040\146\151\154\145" + "\143\150\157\157\163\145\162\040\043\160\141\164\150\142\141\162" + "\142\157\170\040\076\040\163\164\141\143\153\040\076\040\142\157" + "\170\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164" + "\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\054\040\142\165\164\164\157" + "\156\056\163\151\144\145\142\141\162\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040" + "\142\165\164\164\157\156\056\145\155\157\152\151\055\163\145\143" + "\164\151\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\151\156\146\157\142" + "\141\162\040\056\143\154\157\163\145\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\054\040\143\141\154\145\156\144\141" + "\162\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\054\040\056\164\157\157\154\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040" + "\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\054\040\150\145\141\144\145\162\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\146\154\141\164\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154" + "\141\164\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040" + "\142\165\164\164\157\156\056\146\154\141\164\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\061\063\051" + "\073\040\175\012\012\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\143\154\157\163\145\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\054\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040" + "\076\040\164\141\142\163\040\076\040\141\162\162\157\167\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\054\040\167\151\156\144" + "\157\167\056\144\151\141\154\157\147\056\155\145\163\163\141\147" + "\145\056\143\163\144\040\056\144\151\141\154\157\147\055\141\143" + "\164\151\157\156\055\141\162\145\141\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\160\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170" + "\056\143\151\162\143\165\154\141\162\055\142\165\164\164\157\156" + "\163\040\142\165\164\164\157\156\056\143\151\162\143\165\154\141" + "\162\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155" + "\157\144\145\154\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142" + "\157\170\056\151\156\154\151\156\145\055\142\165\164\164\157\156" + "\163\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\054\040\146\151\154\145\143\150\157" + "\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170" + "\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\054\040\146\151\154\145\143\150\157\157\163\145\162" + "\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\040\076\040\142\157\170" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\054\040\146\151\154\145\143\150\157\157\163" + "\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040\076" + "\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\142\165\164\164\157\156\056\163\151\144\145\142\141\162\055\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\054\040\142\165\164\164\157\156\056\145\155\157\152\151\055" + "\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\151\156\146\157" + "\142\141\162\040\056\143\154\157\163\145\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\054\040\143\141\154\145\156\144\141\162" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\054\040\056\164" + "\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054" + "\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\146\154\141\164" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\143\154\157\163\145\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\056\164\157\157\154\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\054\040\150\145\141\144\145\162\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142" + "\163\040\076\040\141\162\162\157\167\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\054\040\167\151\156\144\157\167" + "\056\144\151\141\154\157\147\056\155\145\163\163\141\147\145\056" + "\143\163\144\040\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\141\162\145\141\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142\157" + "\170\056\143\151\162\143\165\154\141\162\055\142\165\164\164\157" + "\156\163\040\142\165\164\164\157\156\056\143\151\162\143\165\154" + "\141\162\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\155\157\144\145\154\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\151\156\154\151\156\145\055\142\165" + "\164\164\157\156\163\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\155\157\144\145\154\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164" + "\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040\146" + "\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150" + "\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076" + "\040\142\157\170\040\076\040\142\157\170\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\054\040\146\151\154\145\143\150\157\157\163\145\162\040" + "\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163\164" + "\141\143\153\040\076\040\142\157\170\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\142\165\164\164\157\156\056\163\151\144\145\142\141\162\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\054\040\142\165\164\164\157\156\056\145\155\157" + "\152\151\055\163\145\143\164\151\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\151\156\146\157\142\141\162\040\056\143\154\157\163\145" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054" + "\040\143\141\154\145\156\144\141\162\040\076\040\150\145\141\144" + "\145\162\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\141\143\164\151\166\145\054\040\150\145\141\144\145\162\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\141\143\164\151\166\145\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040\056" + "\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\054\040\150\145\141\144\145\162\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\146\154\141\164\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\146\154\141\164\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\054\040\155\145\156\165\142" + "\165\164\164\157\156\056\146\154\141\164\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\054\040\142\165\164\164\157\156\056\146\154\141\164\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\054\040\142\165\164" + "\164\157\156\056\146\154\141\164\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\071\051\073\040" + "\175\012\012\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056\143" + "\154\157\163\145\072\144\151\163\141\142\154\145\144\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\144\151\163" + "\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143\153" + "\145\144\051\054\040\150\145\141\144\145\162\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\144\151\163\141\142\154" + "\145\144\072\156\157\164\050\072\143\150\145\143\153\145\144\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144" + "\072\156\157\164\050\072\143\150\145\143\153\145\144\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143" + "\153\145\144\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144\072" + "\156\157\164\050\072\143\150\145\143\153\145\144\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\144\151\163" + "\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143\153" + "\145\144\051\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150" + "\145\143\153\145\144\051\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076" + "\040\164\141\142\163\040\076\040\141\162\162\157\167\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143" + "\153\145\144\051\054\040\167\151\156\144\157\167\056\144\151\141" + "\154\157\147\056\155\145\163\163\141\147\145\056\143\163\144\040" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\141" + "\162\145\141\040\076\040\142\165\164\164\157\156\072\144\151\163" + "\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143\153" + "\145\144\051\054\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\142\157\170\056\143\151\162\143\165\154\141\162\055\142" + "\165\164\164\157\156\163\040\142\165\164\164\157\156\056\143\151" + "\162\143\165\154\141\162\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\155\157\144\145\154\072\144\151\163\141\142\154" + "\145\144\072\156\157\164\050\072\143\150\145\143\153\145\144\051" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142" + "\157\170\056\151\156\154\151\156\145\055\142\165\164\164\157\156" + "\163\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\072\144\151\163\141" + "\142\154\145\144\072\156\157\164\050\072\143\150\145\143\153\145" + "\144\051\054\040\146\151\154\145\143\150\157\157\163\145\162\040" + "\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163\164" + "\141\143\153\040\076\040\142\157\170\040\076\040\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\054\040\146\151\154\145\143" + "\150\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142" + "\157\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170" + "\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150" + "\145\143\153\145\144\051\054\040\146\151\154\145\143\150\157\157" + "\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\072\143\150\145\143\153\145\144\051\054\040\142\165\164\164" + "\157\156\056\163\151\144\145\142\141\162\055\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\054\040\142\165\164\164\157\156" + "\056\145\155\157\152\151\055\163\145\143\164\151\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\144\151\163\141" + "\142\154\145\144\072\156\157\164\050\072\143\150\145\143\153\145" + "\144\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\151\156" + "\146\157\142\141\162\040\056\143\154\157\163\145\072\144\151\163" + "\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143\153" + "\145\144\051\054\040\143\141\154\145\156\144\141\162\040\076\040" + "\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150" + "\145\143\153\145\144\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\072\143\150\145\143\153\145\144\051\054\040\056\164\157\157" + "\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\072\143\150\145\143\153\145\144\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\072\143\150\145\143\153\145\144\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\054\040\056\164\157\157\154" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150" + "\145\143\153\145\144\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143" + "\153\145\144\051\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150" + "\145\143\153\145\144\051\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\144" + "\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145" + "\143\153\145\144\051\054\040\155\145\156\165\142\165\164\164\157" + "\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150" + "\145\143\153\145\144\051\054\040\142\165\164\164\157\156\056\146" + "\154\141\164\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\072\143\150\145\143\153\145\144\051\040\173\040\146\151\154" + "\164\145\162\072\040\157\160\141\143\151\164\171\050\060\056\063" + "\051\073\040\175\012\012\163\164\141\143\153\163\167\151\164\143" + "\150\145\162\040\076\040\142\165\164\164\157\156\040\076\040\154" + "\141\142\145\154\040\173\040\160\141\144\144\151\156\147\072\040" + "\060\040\066\160\170\073\040\155\141\162\147\151\156\072\040\060" + "\040\055\066\160\170\073\040\175\012\012\163\164\141\143\153\163" + "\167\151\164\143\150\145\162\040\076\040\142\165\164\164\157\156" + "\040\076\040\151\155\141\147\145\040\173\040\160\141\144\144\151" + "\156\147\072\040\063\160\170\040\066\160\170\073\040\155\141\162" + "\147\151\156\072\040\055\063\160\170\040\055\066\160\170\073\040" + "\175\012\012\163\164\141\143\153\163\167\151\164\143\150\145\162" + "\040\076\040\142\165\164\164\157\156\056\164\145\170\164\055\142" + "\165\164\164\157\156\040\173\040\155\151\156\055\167\151\144\164" + "\150\072\040\061\060\060\160\170\073\040\175\012\012\142\165\164" + "\164\157\156\056\146\157\156\164\040\163\145\160\141\162\141\164" + "\157\162\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\175\012\012\142\165\164\164\157\156\056\146\157" + "\156\164\040\076\040\142\157\170\040\173\040\142\157\162\144\145" + "\162\055\163\160\141\143\151\156\147\072\040\066\160\170\073\040" + "\175\012\012\142\165\164\164\157\156\056\146\157\156\164\040\076" + "\040\142\157\170\040\076\040\142\157\170\040\076\040\154\141\142" + "\145\154\040\173\040\146\157\156\164\055\167\145\151\147\150\164" + "\072\040\142\157\154\144\073\040\175\012\012\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\072\144\151\162\050\154\164\162\051\072\154" + "\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163" + "\164\055\143\150\151\154\144\072\144\151\162\050\162\164\154\051" + "\072\146\151\162\163\164\055\143\150\151\154\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051\072" + "\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143" + "\150\151\154\144\054\040\142\165\164\164\157\156\056\145\155\157" + "\152\151\055\163\145\143\164\151\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\155\145\156\165\142\165\164\164\157\156\056\143\151" + "\162\143\165\154\141\162\040\076\040\142\165\164\164\157\156\054" + "\040\142\165\164\164\157\156\056\143\151\162\143\165\154\141\162" + "\040\173\040\155\151\156\055\167\151\144\164\150\072\040\063\064" + "\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\063\064\160\170\073\040\160\141\144\144\151\156\147\072\040\060" + "\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072" + "\040\071\071\071\071\160\170\073\040\175\012\012\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\040\154\141\142\145\154\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144" + "\040\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\040\154\141\142\145\154\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\154\141\142\145\154\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150" + "\151\154\144\040\154\141\142\145\154\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\040\154\141\142\145\154\054\040\142\165\164\164\157" + "\156\056\145\155\157\152\151\055\163\145\143\164\151\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\154\141\142\145\154\054\040\155\145" + "\156\165\142\165\164\164\157\156\056\143\151\162\143\165\154\141" + "\162\040\076\040\142\165\164\164\157\156\040\154\141\142\145\154" + "\054\040\142\165\164\164\157\156\056\143\151\162\143\165\154\141" + "\162\040\154\141\142\145\154\040\173\040\160\141\144\144\151\156" + "\147\072\040\060\073\040\175\012\012\155\145\156\165\142\165\164" + "\164\157\156\056\160\151\154\154\040\076\040\142\165\164\164\157" + "\156\054\040\142\165\164\164\157\156\056\160\151\154\154\040\173" + "\040\160\141\144\144\151\156\147\072\040\061\060\160\170\040\063" + "\062\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\071\071\071\071\160\170\073\040\175\012\012\142" + "\165\164\164\157\156\056\143\141\162\144\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\143\141\162\144\137\142\147\137\143\157\154\157\162\073\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\154\151\160\072\040" + "\160\141\144\144\151\156\147\055\142\157\170\073\040\146\157\156" + "\164\055\167\145\151\147\150\164\072\040\151\156\150\145\162\151" + "\164\073\040\160\141\144\144\151\156\147\072\040\060\073\040\175" + "\012\012\142\165\164\164\157\156\056\143\141\162\144\040\173\040" + "\157\165\164\154\151\156\145\072\040\060\040\163\157\154\151\144" + "\040\164\162\141\156\163\160\141\162\145\156\164\073\040\157\165" + "\164\154\151\156\145\055\157\146\146\163\145\164\072\040\065\160" + "\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040\157" + "\165\164\154\151\156\145\055\143\157\154\157\162\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\142\141" + "\143\153\147\162\157\165\156\144\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\142\157\170\055\163\150\141\144\157\167\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\073\040\175\012\012\142" + "\165\164\164\157\156\056\143\141\162\144\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173" + "\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157" + "\154\157\162\054\060\056\070\051\073\040\157\165\164\154\151\156" + "\145\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165" + "\164\154\151\156\145\055\157\146\146\163\145\164\072\040\055\061" + "\160\170\073\040\175\012\012\142\165\164\164\157\156\056\143\141" + "\162\144\072\150\157\166\145\162\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155\141" + "\147\145\050\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\060\064\051\051\073\040\175\012" + "\012\142\165\164\164\157\156\056\143\141\162\144\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\054\040\142\165\164\164\157\156\056\143\141\162\144\072\141\143" + "\164\151\166\145\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\151\155\141\147\145\072\040\151\155\141\147\145\050\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\060\070\051\051\073\040\175\012\012\142\165\164" + "\164\157\156\056\143\141\162\144\072\143\150\145\143\153\145\144" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\100\143\141\162\144\137\142\147\137\143\157" + "\154\157\162\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\151\155\141\147\145\072\040\151\155\141\147\145\050\141\154\160" + "\150\141\050\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\054\060\056\062\065\051\051\073\040\175\012\012\142" + "\165\164\164\157\156\056\143\141\162\144\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155\141" + "\147\145\050\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\054\060\056\063\062\051\051" + "\073\040\175\012\012\142\165\164\164\157\156\056\143\141\162\144" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\054\040\142\165" + "\164\164\157\156\056\143\141\162\144\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155\141" + "\147\145\050\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\054\060\056\063\071\051\051" + "\073\040\175\012\012\142\165\164\164\157\156\056\143\141\162\144" + "\056\150\141\163\055\157\160\145\156\055\160\157\160\165\160\072" + "\143\150\145\143\153\145\144\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\151\155\141\147" + "\145\050\141\154\160\150\141\050\100\141\143\143\145\156\164\137" + "\142\147\137\143\157\154\157\162\054\060\056\063\062\051\051\073" + "\040\175\012\012\056\157\163\144\040\142\165\164\164\157\156\056" + "\143\141\162\144\072\143\150\145\143\153\145\144\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\051\073\040\175\012\012\142\165\164" + "\164\157\156\056\143\141\162\144\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\040\173\040\143\157\154\157\162\072\040\100" + "\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\060\040\060\040\060\040\061\160\170\040\100\141\143" + "\143\145\156\164\137\142\147\137\143\157\154\157\162\073\040\175" + "\012\012\160\157\160\157\166\145\162\056\155\145\156\165\040\155" + "\157\144\145\154\142\165\164\164\157\156\054\040\142\165\164\164" + "\157\156\056\154\151\156\153\054\040\142\165\164\164\157\156\056" + "\154\151\156\153\072\150\157\166\145\162\054\040\142\165\164\164" + "\157\156\056\154\151\156\153\072\141\143\164\151\166\145\054\040" + "\142\165\164\164\157\156\056\154\151\156\153\072\143\150\145\143" + "\153\145\144\054\040\143\157\154\165\155\156\166\151\145\167\040" + "\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157" + "\156\054\040\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\076\040\150\145" + "\141\144\145\162\040\076\040\142\165\164\164\157\156\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040\175" + "\012\012\142\165\164\164\157\156\056\143\157\154\157\162\040\173" + "\040\160\141\144\144\151\156\147\072\040\065\160\170\073\040\175" + "\012\012\142\165\164\164\157\156\056\143\157\154\157\162\040\076" + "\040\143\157\154\157\162\163\167\141\164\143\150\072\157\156\154" + "\171\055\143\150\151\154\144\040\173\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\062\056\065\160\170\073\040" + "\175\012\012\142\165\164\164\157\156\056\143\157\154\157\162\040" + "\076\040\143\157\154\157\162\163\167\141\164\143\150\072\157\156" + "\154\171\055\143\150\151\154\144\040\076\040\157\166\145\162\154" + "\141\171\040\173\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\062\160\170\073\040\175\012\012\142\165\164\164" + "\157\156\056\143\157\154\157\162\040\076\040\143\157\154\157\162" + "\163\167\141\164\143\150\072\157\156\154\171\055\143\150\151\154" + "\144\072\144\151\163\141\142\154\145\144\040\173\040\146\151\154" + "\164\145\162\072\040\156\157\156\145\073\040\175\012\012\142\165" + "\164\164\157\156\056\143\157\154\157\162\040\076\040\143\157\154" + "\157\162\163\167\141\164\143\150\056\154\151\147\150\164\072\157" + "\156\154\171\055\143\150\151\154\144\040\076\040\157\166\145\162" + "\154\141\171\040\173\040\142\157\162\144\145\162\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\100\166\151\145\167\137" + "\146\147\137\143\157\154\157\162\054\060\056\061\051\073\040\175" + "\012\012\155\145\156\165\142\165\164\164\157\156\056\157\163\144" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\143\157\154\157\162\072\040\151\156\150\145" + "\162\151\164\073\040\175\012\012\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\141\143\143\145\156\164\137" + "\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162\072" + "\040\100\141\143\143\145\156\164\137\146\147\137\143\157\154\157" + "\162\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\144\145\163\164\162\165\143" + "\164\151\166\145\137\142\147\137\143\157\154\157\162\073\040\143" + "\157\154\157\162\072\040\100\144\145\163\164\162\165\143\164\151" + "\166\145\137\146\147\137\143\157\154\157\162\073\040\175\012\012" + "\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\155\151\170\050\100\167\151\156\144\157" + "\167\137\142\147\137\143\157\154\157\162\054\100\167\151\156\144" + "\157\167\137\146\147\137\143\157\154\157\162\054\060\056\061\065" + "\051\073\040\143\157\154\157\162\072\040\100\167\151\156\144\157" + "\167\137\146\147\137\143\157\154\157\162\073\040\175\012\012\155" + "\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\054\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\173\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066\160" + "\170\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\056\143\151\162\143\165\154\141\162\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\056\160\151\154\154\054\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\056\143\151\162\143" + "\165\154\141\162\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\056\160\151\154\154\054\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\056\143\151\162\143" + "\165\154\141\162\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\056\160\151\154\154\040\173\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\071\071" + "\071\071\160\170\073\040\175\012\012\155\145\156\165\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\054\040\155\145\156" + "\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\054\040\155\145\156\165\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\054\040\155\145\156\165\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\143\157\154\157\162\072\040\151\156\150\145" + "\162\151\164\073\040\175\012\012\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\040\173\040\155\151\156\055\167" + "\151\144\164\150\072\040\062\064\160\170\073\040\160\141\144\144" + "\151\156\147\055\154\145\146\164\072\040\065\160\170\073\040\160" + "\141\144\144\151\156\147\055\162\151\147\150\164\072\040\065\160" + "\170\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156" + "\056\143\141\162\144\040\076\040\142\165\164\164\157\156\040\173" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\061\062\160\170\073\040\175\012\012\155\145\156\165\142\165\164" + "\164\157\156\040\141\162\162\157\167\040\173\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\061\066\160\170\073\040\155\151" + "\156\055\167\151\144\164\150\072\040\061\066\160\170\073\040\175" + "\012\012\155\145\156\165\142\165\164\164\157\156\040\141\162\162" + "\157\167\056\156\157\156\145\040\173\040\055\147\164\153\055\151" + "\143\157\156\055\163\157\165\162\143\145\072\040\055\147\164\153" + "\055\151\143\157\156\164\150\145\155\145\050\042\157\160\145\156" + "\055\155\145\156\165\055\163\171\155\142\157\154\151\143\042\051" + "\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156\040" + "\141\162\162\157\167\056\144\157\167\156\040\173\040\055\147\164" + "\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040\055" + "\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042\160" + "\141\156\055\144\157\167\156\055\163\171\155\142\157\154\151\143" + "\042\051\073\040\175\012\012\155\145\156\165\142\165\164\164\157" + "\156\040\141\162\162\157\167\056\165\160\040\173\040\055\147\164" + "\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040\055" + "\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042\160" + "\141\156\055\165\160\055\163\171\155\142\157\154\151\143\042\051" + "\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156\040" + "\141\162\162\157\167\056\154\145\146\164\040\173\040\055\147\164" + "\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040\055" + "\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042\160" + "\141\156\055\163\164\141\162\164\055\163\171\155\142\157\154\151" + "\143\042\051\073\040\175\012\012\155\145\156\165\142\165\164\164" + "\157\156\040\141\162\162\157\167\056\162\151\147\150\164\040\173" + "\040\055\147\164\153\055\151\143\157\156\055\163\157\165\162\143" + "\145\072\040\055\147\164\153\055\151\143\157\156\164\150\145\155" + "\145\050\042\160\141\156\055\145\156\144\055\163\171\155\142\157" + "\154\151\143\042\051\073\040\175\012\012\163\160\154\151\164\142" + "\165\164\164\157\156\040\173\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\066\160\170\073\040\175\012\012\163" + "\160\154\151\164\142\165\164\164\157\156\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\040\076\040\163\145\160\141\162\141" + "\164\157\162\040\173\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\142\141\143\153\147\162\157\165\156\144\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\142\157\170\055\163\150\141" + "\144\157\167\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040" + "\164\162\141\156\163\151\164\151\157\156\055\160\162\157\160\145" + "\162\164\171\072\040\142\141\143\153\147\162\157\165\156\144\073" + "\040\175\012\012\163\160\154\151\164\142\165\164\164\157\156\040" + "\076\040\163\145\160\141\162\141\164\157\162\040\173\040\155\141" + "\162\147\151\156\055\164\157\160\072\040\066\160\170\073\040\155" + "\141\162\147\151\156\055\142\157\164\164\157\155\072\040\066\160" + "\170\073\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\175\012\012\163\160\154\151\164\142\165\164" + "\164\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\040\173\040\160\141\144\144" + "\151\156\147\055\154\145\146\164\072\040\064\160\170\073\040\160" + "\141\144\144\151\156\147\055\162\151\147\150\164\072\040\064\160" + "\170\073\040\175\012\012\163\160\154\151\164\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\040\173\040\155\151\156\055\167\151" + "\144\164\150\072\040\062\064\160\170\073\040\160\141\144\144\151" + "\156\147\055\154\145\146\164\072\040\065\160\170\073\040\160\141" + "\144\144\151\156\147\055\162\151\147\150\164\072\040\065\160\170" + "\073\040\175\012\012\163\160\154\151\164\142\165\164\164\157\156" + "\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\040\173\040\160\141\144" + "\144\151\156\147\055\154\145\146\164\072\040\071\160\170\073\040" + "\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040\071" + "\160\170\073\040\175\012\012\163\160\154\151\164\142\165\164\164" + "\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\040\076\040\142\157\170\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\040\076\040\142\157\170\040\173\040\142\157\162\144\145" + "\162\055\163\160\141\143\151\156\147\072\040\066\160\170\073\040" + "\175\012\012\163\160\154\151\164\142\165\164\164\157\156\072\144" + "\151\163\141\142\154\145\144\040\173\040\146\151\154\164\145\162" + "\072\040\157\160\141\143\151\164\171\050\060\056\064\051\073\040" + "\175\012\012\163\160\154\151\164\142\165\164\164\157\156\072\144" + "\151\163\141\142\154\145\144\040\076\040\142\165\164\164\157\156" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\072\144\151" + "\163\141\142\154\145\144\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\040\173\040\146" + "\151\154\164\145\162\072\040\156\157\156\145\073\040\175\012\012" + "\163\160\154\151\164\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\144\151\162\050\154\164\162\051\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\144\151\162\050\162\164\154\051\040\173\040\142\157\162\144" + "\145\162\055\164\157\160\055\162\151\147\150\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055\142" + "\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\155\141\162\147\151\156\055\162\151" + "\147\150\164\072\040\055\061\160\170\073\040\175\012\012\163\160" + "\154\151\164\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\144\151\162\050\162\164\154\051\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\144" + "\151\162\050\154\164\162\051\040\173\040\142\157\162\144\145\162" + "\055\164\157\160\055\154\145\146\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\154\145\146\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\155\141\162\147\151\156\055\154\145\146\164\072\040" + "\055\061\160\170\073\040\175\012\012\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\163\145\160\141" + "\162\141\164\157\162\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\163\145\160\141\162\141" + "\164\157\162\054\040\056\164\157\157\154\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\163\145\160\141\162\141\164\157\162\054" + "\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\163\145\160\141\162\141\164\157\162\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\163\145\160\141\162\141\164\157\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\070\051" + "\073\040\175\012\012\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\150\157\166\145" + "\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\146\154\141\164\072\150\157\166\145\162\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\146\154\141\164" + "\072\141\143\164\151\166\145\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\146\154\141\164\072\143\150\145\143\153\145" + "\144\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\060\067\051\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\151\156\163\145\164\040\060\040\060\040" + "\060\040\061\160\170\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\062\065\051\073\040" + "\175\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\163\145\160\141" + "\162\141\164\157\162\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\163\145\160\141\162\141\164\157\162\054\040\056\164\157\157\154" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\163\145\160\141\162\141\164\157\162\054\040\150\145\141" + "\144\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\163\145\160\141\162\141\164\157\162\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\163\145\160\141\162\141" + "\164\157\162\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\163" + "\145\160\141\162\141\164\157\162\054\040\056\164\157\157\154\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\163\145\160\141\162\141\164\157\162\054\040\150\145\141" + "\144\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\163\145\160\141\162\141\164\157\162\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\163\145\160\141" + "\162\141\164\157\162\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\163\145\160\141\162\141\164\157\162\054\040\056\164\157" + "\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\163\145\160\141\162\141\164\157\162\054" + "\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\163\145\160\141\162" + "\141\164\157\162\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\146\154\141\164\072\150\157\166\145\162\040\076\040\163" + "\145\160\141\162\141\164\157\162\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\146\154\141\164\072\141\143\164\151\166" + "\145\040\076\040\163\145\160\141\162\141\164\157\162\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\146\154\141\164\072" + "\143\150\145\143\153\145\144\040\076\040\163\145\160\141\162\141" + "\164\157\162\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\156\157\156\145\073\040\175\012\012\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\144\151\163" + "\141\142\154\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\144\151\163\141\142\154\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\146\154\141\164\072\144\151\163\141\142\154\145\144\040\173\040" + "\146\151\154\164\145\162\072\040\157\160\141\143\151\164\171\050" + "\060\056\063\051\073\040\175\012\012\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\144\151\163\141" + "\142\154\145\144\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\144\151\163" + "\141\142\154\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\072\144\151\163\141\142\154\145" + "\144\054\040\056\164\157\157\154\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\054\040\150\145" + "\141\144\145\162\142\141\162\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\144\151\163\141\142\154" + "\145\144\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\144\151\163\141\142" + "\154\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\054\040\056\164" + "\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\144\151\163\141" + "\142\154\145\144\054\040\150\145\141\144\145\162\142\141\162\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\144\151\163\141" + "\142\154\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\144\151\163\141\142\154\145\144\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\146\154\141\164\072" + "\144\151\163\141\142\154\145\144\040\076\040\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\146\154\141\164\072\144\151\163" + "\141\142\154\145\144\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\144\151\163\141" + "\142\154\145\144\040\173\040\146\151\154\164\145\162\072\040\156" + "\157\156\145\073\040\175\012\012\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\146" + "\157\143\165\163\055\167\151\164\150\151\156\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\163\145\160\141\162\141\164\157\162\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\146\157\143\165\163\055\167\151" + "\164\150\151\156\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\163" + "\145\160\141\162\141\164\157\162\054\040\056\164\157\157\154\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\146" + "\157\143\165\163\055\167\151\164\150\151\156\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\163\145\160\141\162\141\164\157\162\054" + "\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\146\157\143\165\163\055\167\151\164" + "\150\151\156\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\163\145" + "\160\141\162\141\164\157\162\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\146\154\141\164\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\040\076\040\163\145\160\141\162\141\164\157\162" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\175\012\012\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\054\040\056\164" + "\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\054\040\150\145\141\144\145\162\142\141\162" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\054" + "\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\054\040\150\145\141\144\145\162\142\141\162" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\142\165\164\164\157\156\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\146\154\141\164\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\040" + "\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072" + "\040\066\160\170\073\040\175\012\012\163\160\154\151\164\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157" + "\162\072\040\100\141\143\143\145\156\164\137\146\147\137\143\157" + "\154\157\162\073\040\175\012\012\163\160\154\151\164\142\165\164" + "\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\100\144\145\163\164" + "\162\165\143\164\151\166\145\137\142\147\137\143\157\154\157\162" + "\073\040\143\157\154\157\162\072\040\100\144\145\163\164\162\165" + "\143\164\151\166\145\137\146\147\137\143\157\154\157\162\073\040" + "\175\012\012\163\160\154\151\164\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\155\151\170\050\100\167" + "\151\156\144\157\167\137\142\147\137\143\157\154\157\162\054\100" + "\167\151\156\144\157\167\137\146\147\137\143\157\154\157\162\054" + "\060\056\061\065\051\073\040\143\157\154\157\162\072\040\100\167" + "\151\156\144\157\167\137\146\147\137\143\157\154\157\162\073\040" + "\175\012\012\163\160\154\151\164\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\054\040\163\160\154\151\164\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\040\173\040\143\157\154\157\162\072\040\151\156\150" + "\145\162\151\164\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\175\012\012\163\160\154\151\164\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\144\151\162\050\154" + "\164\162\051\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\144\151\162\050\154\164" + "\162\051\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\144\151\162" + "\050\154\164\162\051\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\061\160\170\040\060\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\070\051\073\040\175\012\012\163\160\154\151" + "\164\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\144" + "\151\162\050\162\164\154\051\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\144\151" + "\162\050\162\164\154\051\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\144\151\162\050\162\164\154\051\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\055\061" + "\160\170\040\060\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\070\051\073\040\175\012" + "\012\163\160\154\151\164\142\165\164\164\157\156\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\040\076\040\141\162\162\157\167\056\156\157\156\145\040" + "\173\040\055\147\164\153\055\151\143\157\156\055\163\157\165\162" + "\143\145\072\040\055\147\164\153\055\151\143\157\156\164\150\145" + "\155\145\050\042\160\141\156\055\144\157\167\156\055\163\171\155" + "\142\157\154\151\143\042\051\073\040\175\012\012\142\165\164\164" + "\157\156\143\157\156\164\145\156\164\040\076\040\142\157\170\040" + "\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\066\160\170\073\040\175\012\012\142\165\164\164\157\156" + "\143\157\156\164\145\156\164\040\076\040\142\157\170\040\076\040" + "\154\141\142\145\154\040\173\040\146\157\156\164\055\167\145\151" + "\147\150\164\072\040\142\157\154\144\073\040\175\012\012\142\165" + "\164\164\157\156\143\157\156\164\145\156\164\040\076\040\142\157" + "\170\040\076\040\154\141\142\145\154\072\144\151\162\050\154\164" + "\162\051\040\173\040\160\141\144\144\151\156\147\055\162\151\147" + "\150\164\072\040\062\160\170\073\040\175\012\012\142\165\164\164" + "\157\156\143\157\156\164\145\156\164\040\076\040\142\157\170\040" + "\076\040\154\141\142\145\154\072\144\151\162\050\162\164\154\051" + "\040\173\040\160\141\144\144\151\156\147\055\154\145\146\164\072" + "\040\062\160\170\073\040\175\012\012\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\040\076\040\142\157\170\040\076\040\142" + "\165\164\164\157\156\143\157\156\164\145\156\164\040\076\040\142" + "\157\170\040\076\040\154\141\142\145\154\072\144\151\162\050\154" + "\164\162\051\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\143\157\156\164\145\156\164\040\076\040\142\157\170\040" + "\076\040\154\141\142\145\154\072\144\151\162\050\154\164\162\051" + "\040\173\040\160\141\144\144\151\156\147\055\162\151\147\150\164" + "\072\040\060\073\040\175\012\012\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\040\076\040\142\157\170\040\076\040\142\165" + "\164\164\157\156\143\157\156\164\145\156\164\040\076\040\142\157" + "\170\040\076\040\154\141\142\145\154\072\144\151\162\050\162\164" + "\154\051\054\040\163\160\154\151\164\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\143\157\156\164\145\156\164\040\076\040\142\157\170\040\076" + "\040\154\141\142\145\154\072\144\151\162\050\162\164\154\051\040" + "\173\040\160\141\144\144\151\156\147\055\154\145\146\164\072\040" + "\060\073\040\175\012\012\164\141\142\142\165\164\164\157\156\040" + "\154\141\142\145\154\040\173\040\146\157\156\164\055\167\145\151" + "\147\150\164\072\040\070\060\060\073\040\146\157\156\164\055\163" + "\151\172\145\072\040\070\160\164\073\040\175\012\012\164\141\142" + "\142\165\164\164\157\156\040\154\141\142\145\154\056\163\155\141" + "\154\154\040\173\040\146\157\156\164\055\163\151\172\145\072\040" + "\066\160\164\073\040\175\012\012\164\141\142\142\165\164\164\157" + "\156\040\151\156\144\151\143\141\164\157\162\142\151\156\040\076" + "\040\151\156\144\151\143\141\164\157\162\054\040\164\141\142\142" + "\165\164\164\157\156\040\151\156\144\151\143\141\164\157\162\142" + "\151\156\040\076\040\155\141\163\153\040\173\040\164\162\141\156" + "\163\146\157\162\155\072\040\164\162\141\156\163\154\141\164\145" + "\050\055\061\160\170\054\040\061\160\170\051\073\040\175\012\012" + "\143\141\154\145\156\144\141\162\040\173\040\143\157\154\157\162" + "\072\040\100\166\151\145\167\137\146\147\137\143\157\154\157\162" + "\073\040\142\141\143\153\147\162\157\165\156\144\055\143\154\151" + "\160\072\040\160\141\144\144\151\156\147\055\142\157\170\073\040" + "\142\157\162\144\145\162\072\040\061\160\170\040\163\157\154\151" + "\144\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\065\051\073\040\146\157\156\164\055" + "\146\145\141\164\165\162\145\055\163\145\164\164\151\156\147\163" + "\072\040\042\164\156\165\155\042\073\040\175\012\012\143\141\154" + "\145\156\144\141\162\040\076\040\150\145\141\144\145\162\040\173" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\072\040" + "\061\160\170\040\163\157\154\151\144\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065" + "\051\073\040\175\012\012\143\141\154\145\156\144\141\162\040\076" + "\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156" + "\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\060\073\040\175\012\012\143\141\154\145\156\144\141\162" + "\040\076\040\147\162\151\144\040\173\040\160\141\144\144\151\156" + "\147\055\154\145\146\164\072\040\063\160\170\073\040\160\141\144" + "\144\151\156\147\055\142\157\164\164\157\155\072\040\063\160\170" + "\073\040\175\012\012\143\141\154\145\156\144\141\162\040\076\040" + "\147\162\151\144\040\076\040\154\141\142\145\154\056\164\157\144" + "\141\171\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\060\160\170\040\055\062\160\170\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\065\051\073\040\175\012\012\143\141\154\145" + "\156\144\141\162\040\076\040\147\162\151\144\040\076\040\154\141" + "\142\145\154\056\164\157\144\141\171\072\163\145\154\145\143\164" + "\145\144\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\175\012\012\143\141\154\145\156\144" + "\141\162\040\076\040\147\162\151\144\040\076\040\154\141\142\145" + "\154\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\063\160\170\073\040\155\141\162\147\151\156\055\162\151\147\150" + "\164\072\040\063\160\170\073\040\175\012\012\143\141\154\145\156" + "\144\141\162\040\076\040\147\162\151\144\040\076\040\154\141\142" + "\145\154\040\173\040\157\165\164\154\151\156\145\072\040\060\040" + "\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156" + "\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\064\160\170\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165" + "\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\073\040\175\012\012\143\141\154\145\156\144\141\162\040\076" + "\040\147\162\151\144\040\076\040\154\141\142\145\154\072\146\157" + "\143\165\163\040\173\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145" + "\156\164\137\143\157\154\157\162\054\060\056\070\051\073\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\072\040\062\160" + "\170\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\055\062\160\170\073\040\175\012\012\143\141\154\145" + "\156\144\141\162\040\076\040\147\162\151\144\040\076\040\154\141" + "\142\145\154\056\144\141\171\055\156\165\155\142\145\162\040\173" + "\040\160\141\144\144\151\156\147\072\040\063\160\170\073\040\175" + "\012\012\143\141\154\145\156\144\141\162\040\076\040\147\162\151" + "\144\040\076\040\154\141\142\145\154\056\144\141\171\055\156\165" + "\155\142\145\162\072\143\150\145\143\153\145\144\040\173\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066\160" + "\170\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145" + "\156\164\137\142\147\137\143\157\154\157\162\054\060\056\063\051" + "\073\040\175\012\012\143\141\154\145\156\144\141\162\040\076\040" + "\147\162\151\144\040\076\040\154\141\142\145\154\056\144\141\171" + "\055\156\165\155\142\145\162\072\163\145\154\145\143\164\145\144" + "\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\066\160\170\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162" + "\072\040\100\141\143\143\145\156\164\137\146\147\137\143\157\154" + "\157\162\073\040\175\012\012\143\141\154\145\156\144\141\162\040" + "\076\040\147\162\151\144\040\076\040\154\141\142\145\154\056\144" + "\141\171\055\156\165\155\142\145\162\056\157\164\150\145\162\055" + "\155\157\156\164\150\040\173\040\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\063\051\073\040\175\012\012\143\150\145\143\153" + "\142\165\164\164\157\156\040\173\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\064\160\170\073\040\142\157" + "\162\144\145\162\055\162\141\144\151\165\163\072\040\071\160\170" + "\073\040\160\141\144\144\151\156\147\072\040\063\160\170\073\040" + "\175\012\012\143\150\145\143\153\142\165\164\164\157\156\040\173" + "\040\157\165\164\154\151\156\145\072\040\060\040\163\157\154\151" + "\144\040\164\162\141\156\163\160\141\162\145\156\164\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\064" + "\160\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156" + "\145\055\167\151\144\164\150\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175" + "\012\012\143\150\145\143\153\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\143\157\154\157\162\054\060\056\070\051\073\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\072\040\062\160\170\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\055\062\160\170\073\040\175\012\012\056\157\163\144\040\143" + "\150\145\143\153\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173" + "\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040" + "\162\147\142\141\050\062\065\065\054\040\062\065\065\054\040\062" + "\065\065\054\040\060\056\065\051\073\040\175\012\012\143\150\145" + "\143\153\142\165\164\164\157\156\056\164\145\170\164\055\142\165" + "\164\164\157\156\040\173\040\160\141\144\144\151\156\147\072\040" + "\064\160\170\073\040\175\012\012\143\150\145\143\153\054\040\162" + "\141\144\151\157\040\173\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\061\064\160\170\073\040\155\151\156\055\167\151\144" + "\164\150\072\040\061\064\160\170\073\040\055\147\164\153\055\151" + "\143\157\156\055\163\151\172\145\072\040\061\064\160\170\073\040" + "\160\141\144\144\151\156\147\072\040\063\160\170\073\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\060\040\060\040\060\040\062\160\170\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065" + "\051\073\040\175\012\012\143\150\145\143\153\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\072\156\157\164\050\072\151" + "\156\144\145\164\145\162\155\151\156\141\164\145\051\072\150\157" + "\166\145\162\054\040\162\141\144\151\157\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\072\151\156" + "\144\145\164\145\162\155\151\156\141\164\145\051\072\150\157\166" + "\145\162\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\060\040\060\040\060\040\062\160\170" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\066\051\073\040\175\012\012\143\150\145" + "\143\153\072\156\157\164\050\072\143\150\145\143\153\145\144\051" + "\072\156\157\164\050\072\151\156\144\145\164\145\162\155\151\156" + "\141\164\145\051\072\141\143\164\151\166\145\054\040\162\141\144" + "\151\157\072\156\157\164\050\072\143\150\145\143\153\145\144\051" + "\072\156\157\164\050\072\151\156\144\145\164\145\162\155\151\156" + "\141\164\145\051\072\141\143\164\151\166\145\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\066\051\073\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\156\157\156\145\073\040\175\012\012\143\150" + "\145\143\153\072\143\150\145\143\153\145\144\054\040\143\150\145" + "\143\153\072\151\156\144\145\164\145\162\155\151\156\141\164\145" + "\054\040\162\141\144\151\157\072\143\150\145\143\153\145\144\054" + "\040\162\141\144\151\157\072\151\156\144\145\164\145\162\155\151" + "\156\141\164\145\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162" + "\072\040\100\141\143\143\145\156\164\137\146\147\137\143\157\154" + "\157\162\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\156\157\156\145\073\040\175\012\012\143\150\145\143\153\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\054\040\143\150" + "\145\143\153\072\151\156\144\145\164\145\162\155\151\156\141\164" + "\145\072\150\157\166\145\162\054\040\162\141\144\151\157\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\054\040\162\141" + "\144\151\157\072\151\156\144\145\164\145\162\155\151\156\141\164" + "\145\072\150\157\166\145\162\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\151\155\141\147" + "\145\050\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\061\051\051\073\040\175\012\012\143" + "\150\145\143\153\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\143\150\145\143\153\072\151\156\144\145\164" + "\145\162\155\151\156\141\164\145\072\141\143\164\151\166\145\054" + "\040\162\141\144\151\157\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\054\040\162\141\144\151\157\072\151\156\144" + "\145\164\145\162\155\151\156\141\164\145\072\141\143\164\151\166" + "\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151" + "\155\141\147\145\072\040\151\155\141\147\145\050\162\147\142\141" + "\050\060\054\040\060\054\040\060\054\040\060\056\062\051\051\073" + "\040\175\012\012\143\150\145\143\153\072\144\151\163\141\142\154" + "\145\144\054\040\162\141\144\151\157\072\144\151\163\141\142\154" + "\145\144\040\173\040\146\151\154\164\145\162\072\040\157\160\141" + "\143\151\164\171\050\060\056\064\051\073\040\175\012\012\056\157" + "\163\144\040\143\150\145\143\153\072\143\150\145\143\153\145\144" + "\054\040\056\157\163\144\040\143\150\145\143\153\072\151\156\144" + "\145\164\145\162\155\151\156\141\164\145\054\040\056\157\163\144" + "\040\162\141\144\151\157\072\143\150\145\143\153\145\144\054\040" + "\056\157\163\144\040\162\141\144\151\157\072\151\156\144\145\164" + "\145\162\155\151\156\141\164\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\162\147\142" + "\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054" + "\040\060\056\067\065\051\073\040\143\157\154\157\162\072\040\162" + "\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056\067" + "\065\051\073\040\175\012\012\143\150\145\143\153\040\173\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066\160" + "\170\073\040\175\012\012\143\150\145\143\153\072\143\150\145\143" + "\153\145\144\040\173\040\055\147\164\153\055\151\143\157\156\055" + "\163\157\165\162\143\145\072\040\055\147\164\153\055\163\143\141" + "\154\145\144\050\055\147\164\153\055\162\145\143\157\154\157\162" + "\050\165\162\154\050\042\141\163\163\145\164\163\057\143\150\145" + "\143\153\055\163\171\155\142\157\154\151\143\056\163\171\155\142" + "\157\154\151\143\056\160\156\147\042\051\051\054\040\055\147\164" + "\153\055\162\145\143\157\154\157\162\050\165\162\154\050\042\141" + "\163\163\145\164\163\057\143\150\145\143\153\100\062\055\163\171" + "\155\142\157\154\151\143\056\163\171\155\142\157\154\151\143\056" + "\160\156\147\042\051\051\051\073\040\175\012\012\162\141\144\151" + "\157\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\061\060\060\045\073\040\175\012\012\162\141\144\151" + "\157\072\143\150\145\143\153\145\144\040\173\040\055\147\164\153" + "\055\151\143\157\156\055\163\157\165\162\143\145\072\040\055\147" + "\164\153\055\163\143\141\154\145\144\050\055\147\164\153\055\162" + "\145\143\157\154\157\162\050\165\162\154\050\042\141\163\163\145" + "\164\163\057\142\165\154\154\145\164\055\163\171\155\142\157\154" + "\151\143\056\163\171\155\142\157\154\151\143\056\160\156\147\042" + "\051\051\054\040\055\147\164\153\055\162\145\143\157\154\157\162" + "\050\165\162\154\050\042\141\163\163\145\164\163\057\142\165\154" + "\154\145\164\100\062\055\163\171\155\142\157\154\151\143\056\163" + "\171\155\142\157\154\151\143\056\160\156\147\042\051\051\051\073" + "\040\175\012\012\143\150\145\143\153\072\151\156\144\145\164\145" + "\162\155\151\156\141\164\145\054\040\162\141\144\151\157\072\151" + "\156\144\145\164\145\162\155\151\156\141\164\145\040\173\040\055" + "\147\164\153\055\151\143\157\156\055\163\157\165\162\143\145\072" + "\040\055\147\164\153\055\163\143\141\154\145\144\050\055\147\164" + "\153\055\162\145\143\157\154\157\162\050\165\162\154\050\042\141" + "\163\163\145\164\163\057\144\141\163\150\055\163\171\155\142\157" + "\154\151\143\056\163\171\155\142\157\154\151\143\056\160\156\147" + "\042\051\051\054\040\055\147\164\153\055\162\145\143\157\154\157" + "\162\050\165\162\154\050\042\141\163\163\145\164\163\057\144\141" + "\163\150\100\062\055\163\171\155\142\157\154\151\143\056\163\171" + "\155\142\157\154\151\143\056\160\156\147\042\051\051\051\073\040" + "\175\012\012\143\150\145\143\153\142\165\164\164\157\156\056\163" + "\145\154\145\143\164\151\157\156\055\155\157\144\145\040\173\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\061" + "\060\060\160\170\073\040\175\012\012\143\150\145\143\153\142\165" + "\164\164\157\156\056\163\145\154\145\143\164\151\157\156\055\155" + "\157\144\145\040\143\150\145\143\153\054\040\143\150\145\143\153" + "\142\165\164\164\157\156\056\163\145\154\145\143\164\151\157\156" + "\055\155\157\144\145\040\162\141\144\151\157\040\173\040\160\141" + "\144\144\151\156\147\072\040\067\160\170\073\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\061\060\060\160\170" + "\073\040\175\012\012\143\150\145\143\153\142\165\164\164\157\156" + "\056\163\145\154\145\143\164\151\157\156\055\155\157\144\145\040" + "\154\141\142\145\154\072\144\151\162\050\154\164\162\051\040\173" + "\040\155\141\162\147\151\156\055\162\151\147\150\164\072\040\066" + "\160\170\073\040\175\012\012\143\150\145\143\153\142\165\164\164" + "\157\156\056\163\145\154\145\143\164\151\157\156\055\155\157\144" + "\145\040\154\141\142\145\154\072\144\151\162\050\162\164\154\051" + "\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072\040" + "\066\160\170\073\040\175\012\012\143\157\154\157\162\163\167\141" + "\164\143\150\040\173\040\157\165\164\154\151\156\145\072\040\060" + "\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\066\160\170\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\073\040\175\012\012\143\157\154\157\162\163\167\141\164" + "\143\150\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\054\060\056\070\051" + "\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072" + "\040\064\160\170\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\055\062\160\170\073\040\175\012\012\143" + "\157\154\157\162\163\167\141\164\143\150\056\164\157\160\040\173" + "\040\142\157\162\144\145\162\055\164\157\160\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\066\056\065\160\170\073\040" + "\142\157\162\144\145\162\055\164\157\160\055\162\151\147\150\164" + "\055\162\141\144\151\165\163\072\040\066\056\065\160\170\073\040" + "\175\012\012\143\157\154\157\162\163\167\141\164\143\150\056\164" + "\157\160\040\076\040\157\166\145\162\154\141\171\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\066\160\170\073\040\142\157\162\144" + "\145\162\055\164\157\160\055\162\151\147\150\164\055\162\141\144" + "\151\165\163\072\040\066\160\170\073\040\175\012\012\143\157\154" + "\157\162\163\167\141\164\143\150\056\142\157\164\164\157\155\040" + "\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\066\056\065" + "\160\170\073\040\142\157\162\144\145\162\055\142\157\164\164\157" + "\155\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040" + "\066\056\065\160\170\073\040\175\012\012\143\157\154\157\162\163" + "\167\141\164\143\150\056\142\157\164\164\157\155\040\076\040\157" + "\166\145\162\154\141\171\040\173\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\066\160\170\073\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144" + "\151\165\163\072\040\066\160\170\073\040\175\012\012\143\157\154" + "\157\162\163\167\141\164\143\150\056\154\145\146\164\054\040\143" + "\157\154\157\162\163\167\141\164\143\150\072\146\151\162\163\164" + "\055\143\150\151\154\144\072\156\157\164\050\056\164\157\160\051" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\066\056\065\160\170" + "\073\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\066\056\065" + "\160\170\073\040\175\012\012\143\157\154\157\162\163\167\141\164" + "\143\150\056\154\145\146\164\040\076\040\157\166\145\162\154\141" + "\171\054\040\143\157\154\157\162\163\167\141\164\143\150\072\146" + "\151\162\163\164\055\143\150\151\154\144\072\156\157\164\050\056" + "\164\157\160\051\040\076\040\157\166\145\162\154\141\171\040\173" + "\040\142\157\162\144\145\162\055\164\157\160\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\066\160\170\073\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\066\160\170\073\040\175\012" + "\012\143\157\154\157\162\163\167\141\164\143\150\056\162\151\147" + "\150\164\054\040\143\157\154\157\162\163\167\141\164\143\150\072" + "\154\141\163\164\055\143\150\151\154\144\072\156\157\164\050\056" + "\142\157\164\164\157\155\051\040\173\040\142\157\162\144\145\162" + "\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151\165" + "\163\072\040\066\056\065\160\170\073\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\066\056\065\160\170\073\040\175\012\012" + "\143\157\154\157\162\163\167\141\164\143\150\056\162\151\147\150" + "\164\040\076\040\157\166\145\162\154\141\171\054\040\143\157\154" + "\157\162\163\167\141\164\143\150\072\154\141\163\164\055\143\150" + "\151\154\144\072\156\157\164\050\056\142\157\164\164\157\155\051" + "\040\076\040\157\166\145\162\154\141\171\040\173\040\142\157\162" + "\144\145\162\055\164\157\160\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\066\160\170\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\066\160\170\073\040\175\012\012\143" + "\157\154\157\162\163\167\141\164\143\150\040\076\040\157\166\145" + "\162\154\141\171\040\173\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\060\040\060\040\060\040\061" + "\160\170\040\141\154\160\150\141\050\100\166\151\145\167\137\146" + "\147\137\143\157\154\157\162\054\060\056\065\051\073\040\175\012" + "\012\143\157\154\157\162\163\167\141\164\143\150\056\144\141\162" + "\153\040\076\040\157\166\145\162\154\141\171\040\173\040\143\157" + "\154\157\162\072\040\167\150\151\164\145\073\040\175\012\012\143" + "\157\154\157\162\163\167\141\164\143\150\056\154\151\147\150\164" + "\040\076\040\157\166\145\162\154\141\171\040\173\040\143\157\154" + "\157\162\072\040\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\067\065\051\073\040\175\012\012\143\157\154\157" + "\162\163\167\141\164\143\150\056\154\151\147\150\164\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\040\076\040\157\166\145" + "\162\154\141\171\040\173\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\060\040\060\040\060\040\062" + "\160\170\040\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\143\157\154\157\162\163\167\141" + "\164\143\150\056\144\141\162\153\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\040\076\040\157\166\145\162\154\141\171\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\060\040\060\040\060\040\062\160\170\040\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073\040" + "\175\012\012\143\157\154\157\162\163\167\141\164\143\150\043\141" + "\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156\040" + "\076\040\157\166\145\162\154\141\171\040\173\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\066\160\170\040\060" + "\040\060\040\066\160\170\073\040\175\012\012\143\157\154\157\162" + "\163\167\141\164\143\150\043\141\144\144\055\143\157\154\157\162" + "\055\142\165\164\164\157\156\072\157\156\154\171\055\143\150\151" + "\154\144\040\076\040\157\166\145\162\154\141\171\040\173\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066\160" + "\170\073\040\175\012\012\143\157\154\157\162\163\167\141\164\143" + "\150\072\144\151\163\141\142\154\145\144\040\173\040\146\151\154" + "\164\145\162\072\040\157\160\141\143\151\164\171\050\060\056\064" + "\051\073\040\175\012\012\143\157\154\157\162\163\167\141\164\143" + "\150\043\145\144\151\164\157\162\055\143\157\154\157\162\055\163" + "\141\155\160\154\145\040\173\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\066\160\170\073\040\175\012\012\143" + "\157\154\157\162\163\167\141\164\143\150\043\145\144\151\164\157" + "\162\055\143\157\154\157\162\055\163\141\155\160\154\145\040\076" + "\040\157\166\145\162\154\141\171\040\173\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\066\056\065\160\170\073" + "\040\175\012\012\160\154\141\156\145\040\173\040\157\165\164\154" + "\151\156\145\072\040\060\040\163\157\154\151\144\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\072\040\066\160\170\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\160\154\141" + "\156\145\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\054\060\056\070\051" + "\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072" + "\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\062\160\170\073\040\175\012\012\143\157" + "\154\157\162\143\150\157\157\163\145\162\040\056\160\157\160\157" + "\166\145\162\056\157\163\144\040\173\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\061\062\160\170\073\040\175" + "\012\012\143\157\154\165\155\156\166\151\145\167\054\040\164\162" + "\145\145\166\151\145\167\056\166\151\145\167\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151" + "\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\142\157\170\040\173\040\157\165\164\154\151\156\145\072\040" + "\060\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\072\040\064\160\170\073\040\164\162\141\156\163\151" + "\164\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040" + "\157\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\073\040\175\012\012\143\157\154\165\155\156\166\151" + "\145\167\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\164\162\145\145\166\151\145\167" + "\056\166\151\145\167\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142" + "\157\170\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\054\060\056\070\051" + "\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072" + "\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\055\062\160\170\073\040\175\012\012\143" + "\157\154\165\155\156\166\151\145\167\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\054\040\164\162\145\145\166\151\145\167" + "\056\166\151\145\167\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\156\157\156\145\073\040\175\012\012" + "\143\157\154\165\155\156\166\151\145\167\040\076\040\150\145\141" + "\144\145\162\040\076\040\142\165\164\164\157\156\054\040\164\162" + "\145\145\166\151\145\167\056\166\151\145\167\040\076\040\150\145" + "\141\144\145\162\040\076\040\142\165\164\164\157\156\054\040\167" + "\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145" + "\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\142\157\170\040\076\040\150\145\141\144\145\162\040" + "\076\040\142\165\164\164\157\156\040\173\040\160\141\144\144\151" + "\156\147\055\164\157\160\072\040\063\160\170\073\040\160\141\144" + "\144\151\156\147\055\142\157\164\164\157\155\072\040\063\160\170" + "\073\040\160\141\144\144\151\156\147\055\154\145\146\164\072\040" + "\066\160\170\073\040\160\141\144\144\151\156\147\055\162\151\147" + "\150\164\072\040\066\160\170\073\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\156\157\156\145\073\040\154\151\156" + "\145\055\150\145\151\147\150\164\072\040\061\060\060\045\073\040" + "\142\157\162\144\145\162\055\154\145\146\164\072\040\061\160\170" + "\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\175\012\012\143\157\154\165\155\156\166\151\145" + "\167\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164" + "\164\157\156\072\146\151\162\163\164\055\143\150\151\154\144\054" + "\040\164\162\145\145\166\151\145\167\056\166\151\145\167\040\076" + "\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156" + "\072\146\151\162\163\164\055\143\150\151\154\144\054\040\167\151" + "\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166" + "\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157" + "\156\055\142\157\170\040\076\040\150\145\141\144\145\162\040\076" + "\040\142\165\164\164\157\156\072\146\151\162\163\164\055\143\150" + "\151\154\144\040\173\040\142\157\162\144\145\162\055\154\145\146" + "\164\055\167\151\144\164\150\072\040\060\073\040\175\012\012\143" + "\157\154\165\155\156\166\151\145\167\040\076\040\150\145\141\144" + "\145\162\040\076\040\142\165\164\164\157\156\040\076\040\142\157" + "\170\054\040\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\040\076\040\142\157\170\054\040\167\151\156\144\157\167" + "\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164" + "\164\157\156\040\076\040\142\157\170\040\173\040\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\066\051\073\040\146\157\156\164" + "\055\167\145\151\147\150\164\072\040\067\060\060\073\040\146\157" + "\156\164\055\163\151\172\145\072\040\071\160\164\073\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160" + "\170\073\040\175\012\012\143\157\154\165\155\156\166\151\145\167" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\040\076\040\142\157\170\054\040" + "\164\162\145\145\166\151\145\167\056\166\151\145\167\040\076\040" + "\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\040\076\040\142\157\170\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151" + "\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\142\157\170\040\076\040\150\145\141\144\145\162\040\076\040" + "\142\165\164\164\157\156\072\150\157\166\145\162\040\076\040\142" + "\157\170\040\173\040\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\071\051\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\175\012\012\143\157\154\165\155\156" + "\166\151\145\167\040\076\040\150\145\141\144\145\162\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\040\076\040" + "\142\157\170\054\040\164\162\145\145\166\151\145\167\056\166\151" + "\145\167\040\076\040\150\145\141\144\145\162\040\076\040\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\040\076\040\142\157" + "\170\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\040\076\040\150\145\141" + "\144\145\162\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\040\076\040\142\157\170\040\173\040\143\157\154\157" + "\162\072\040\143\165\162\162\145\156\164\103\157\154\157\162\073" + "\040\175\012\012\143\157\154\165\155\156\166\151\145\167\040\076" + "\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156" + "\040\163\157\162\164\055\151\156\144\151\143\141\164\157\162\054" + "\040\164\162\145\145\166\151\145\167\056\166\151\145\167\040\076" + "\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156" + "\040\163\157\162\164\055\151\156\144\151\143\141\164\157\162\054" + "\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164\162" + "\145\145\166\151\145\167\056\144\151\141\154\157\147\055\141\143" + "\164\151\157\156\055\142\157\170\040\076\040\150\145\141\144\145" + "\162\040\076\040\142\165\164\164\157\156\040\163\157\162\164\055" + "\151\156\144\151\143\141\164\157\162\040\173\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\061\066\160\170\073\040\155\151" + "\156\055\167\151\144\164\150\072\040\061\066\160\170\073\040\175" + "\012\012\143\157\154\165\155\156\166\151\145\167\040\076\040\150" + "\145\141\144\145\162\040\076\040\142\165\164\164\157\156\040\163" + "\157\162\164\055\151\156\144\151\143\141\164\157\162\056\141\163" + "\143\145\156\144\151\156\147\054\040\164\162\145\145\166\151\145" + "\167\056\166\151\145\167\040\076\040\150\145\141\144\145\162\040" + "\076\040\142\165\164\164\157\156\040\163\157\162\164\055\151\156" + "\144\151\143\141\164\157\162\056\141\163\143\145\156\144\151\156" + "\147\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\040\076\040\150\145\141" + "\144\145\162\040\076\040\142\165\164\164\157\156\040\163\157\162" + "\164\055\151\156\144\151\143\141\164\157\162\056\141\163\143\145" + "\156\144\151\156\147\040\173\040\055\147\164\153\055\151\143\157" + "\156\055\163\157\165\162\143\145\072\040\055\147\164\153\055\151" + "\143\157\156\164\150\145\155\145\050\042\160\141\156\055\165\160" + "\055\163\171\155\142\157\154\151\143\042\051\073\040\175\012\012" + "\143\157\154\165\155\156\166\151\145\167\040\076\040\150\145\141" + "\144\145\162\040\076\040\142\165\164\164\157\156\040\163\157\162" + "\164\055\151\156\144\151\143\141\164\157\162\056\144\145\163\143" + "\145\156\144\151\156\147\054\040\164\162\145\145\166\151\145\167" + "\056\166\151\145\167\040\076\040\150\145\141\144\145\162\040\076" + "\040\142\165\164\164\157\156\040\163\157\162\164\055\151\156\144" + "\151\143\141\164\157\162\056\144\145\163\143\145\156\144\151\156" + "\147\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\040\076\040\150\145\141" + "\144\145\162\040\076\040\142\165\164\164\157\156\040\163\157\162" + "\164\055\151\156\144\151\143\141\164\157\162\056\144\145\163\143" + "\145\156\144\151\156\147\040\173\040\055\147\164\153\055\151\143" + "\157\156\055\163\157\165\162\143\145\072\040\055\147\164\153\055" + "\151\143\157\156\164\150\145\155\145\050\042\160\141\156\055\144" + "\157\167\156\055\163\171\155\142\157\154\151\143\042\051\073\040" + "\175\012\012\143\157\154\165\155\156\166\151\145\167\040\142\165" + "\164\164\157\156\056\144\156\144\072\141\143\164\151\166\145\054" + "\040\143\157\154\165\155\156\166\151\145\167\040\142\165\164\164" + "\157\156\056\144\156\144\072\163\145\154\145\143\164\145\144\054" + "\040\143\157\154\165\155\156\166\151\145\167\040\142\165\164\164" + "\157\156\056\144\156\144\072\150\157\166\145\162\054\040\143\157" + "\154\165\155\156\166\151\145\167\040\142\165\164\164\157\156\056" + "\144\156\144\054\040\164\162\145\145\166\151\145\167\056\166\151" + "\145\167\040\142\165\164\164\157\156\056\144\156\144\054\040\167" + "\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145" + "\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\142\157\170\040\142\165\164\164\157\156\056\144\156" + "\144\054\040\143\157\154\165\155\156\166\151\145\167\040\150\145" + "\141\144\145\162\056\142\165\164\164\157\156\056\144\156\144\072" + "\141\143\164\151\166\145\054\040\143\157\154\165\155\156\166\151" + "\145\167\040\150\145\141\144\145\162\056\142\165\164\164\157\156" + "\056\144\156\144\072\163\145\154\145\143\164\145\144\054\040\143" + "\157\154\165\155\156\166\151\145\167\040\150\145\141\144\145\162" + "\056\142\165\164\164\157\156\056\144\156\144\072\150\157\166\145" + "\162\054\040\143\157\154\165\155\156\166\151\145\167\040\150\145" + "\141\144\145\162\056\142\165\164\164\157\156\056\144\156\144\054" + "\040\164\162\145\145\166\151\145\167\056\166\151\145\167\040\150" + "\145\141\144\145\162\056\142\165\164\164\157\156\056\144\156\144" + "\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164" + "\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\040\150\145\141\144\145\162" + "\056\142\165\164\164\157\156\056\144\156\144\040\173\040\143\157" + "\154\157\162\072\040\100\141\143\143\145\156\164\137\146\147\137" + "\143\157\154\157\162\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\073\040\164\162\141\156\163" + "\151\164\151\157\156\072\040\156\157\156\145\073\040\175\012\012" + "\143\157\154\165\155\156\166\151\145\167\056\166\151\145\167\040" + "\076\040\154\151\163\164\166\151\145\167\056\166\151\145\167\054" + "\040\164\162\145\145\166\151\145\167\056\166\151\145\167\040\076" + "\040\154\151\163\164\166\151\145\167\056\166\151\145\167\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\143\157\154" + "\165\155\156\166\151\145\167\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\040\076\040\154\151\163\164" + "\166\151\145\167\056\166\151\145\167\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142" + "\157\170\040\076\040\154\151\163\164\166\151\145\167\056\166\151" + "\145\167\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\143\157\154\165\155\156\166\151\145\167\056\166\151\145\167" + "\040\076\040\154\151\163\164\166\151\145\167\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\142\157\170\054\040\167" + "\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145" + "\166\151\145\167\056\166\151\145\167\040\076\040\154\151\163\164" + "\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\142\157\170\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\143\157\154\165\155\156\166\151\145\167\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\040\076\040\154\151\163\164\166\151\145\167\056\144\151\141" + "\154\157\147\055\141\143\164\151\157\156\055\142\157\170\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145" + "\145\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\142\157\170\040\076\040\154\151\163\164\166\151" + "\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\142\157\170\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\072\040\156\157\156\145\073\040\143\157\154\157\162\072\040" + "\151\156\150\145\162\151\164\073\040\175\012\012\143\157\154\165" + "\155\156\166\151\145\167\040\076\040\154\151\163\164\166\151\145" + "\167\040\076\040\162\157\167\054\040\164\162\145\145\166\151\145" + "\167\056\166\151\145\167\040\076\040\154\151\163\164\166\151\145" + "\167\040\076\040\162\157\167\054\040\167\151\156\144\157\167\056" + "\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170" + "\040\076\040\154\151\163\164\166\151\145\167\040\076\040\162\157" + "\167\040\173\040\160\141\144\144\151\156\147\072\040\060\073\040" + "\175\012\012\143\157\154\165\155\156\166\151\145\167\040\076\040" + "\154\151\163\164\166\151\145\167\040\076\040\162\157\167\040\076" + "\040\143\145\154\154\054\040\164\162\145\145\166\151\145\167\056" + "\166\151\145\167\040\076\040\154\151\163\164\166\151\145\167\040" + "\076\040\162\157\167\040\076\040\143\145\154\154\054\040\167\151" + "\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166" + "\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157" + "\156\055\142\157\170\040\076\040\154\151\163\164\166\151\145\167" + "\040\076\040\162\157\167\040\076\040\143\145\154\154\040\173\040" + "\160\141\144\144\151\156\147\072\040\070\160\170\040\066\160\170" + "\073\040\175\012\012\143\157\154\165\155\156\166\151\145\167\040" + "\076\040\154\151\163\164\166\151\145\167\040\076\040\162\157\167" + "\040\076\040\143\145\154\154\072\156\157\164\050\072\146\151\162" + "\163\164\055\143\150\151\154\144\051\054\040\164\162\145\145\166" + "\151\145\167\056\166\151\145\167\040\076\040\154\151\163\164\166" + "\151\145\167\040\076\040\162\157\167\040\076\040\143\145\154\154" + "\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151\154" + "\144\051\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\076\040\154\151" + "\163\164\166\151\145\167\040\076\040\162\157\167\040\076\040\143" + "\145\154\154\072\156\157\164\050\072\146\151\162\163\164\055\143" + "\150\151\154\144\051\040\173\040\142\157\162\144\145\162\055\154" + "\145\146\164\072\040\061\160\170\040\163\157\154\151\144\040\164" + "\162\141\156\163\160\141\162\145\156\164\073\040\175\012\012\143" + "\157\154\165\155\156\166\151\145\167\056\143\157\154\165\155\156" + "\055\163\145\160\141\162\141\164\157\162\163\040\076\040\154\151" + "\163\164\166\151\145\167\040\076\040\162\157\167\040\076\040\143" + "\145\154\154\054\040\164\162\145\145\166\151\145\167\056\143\157" + "\154\165\155\156\055\163\145\160\141\162\141\164\157\162\163\056" + "\166\151\145\167\040\076\040\154\151\163\164\166\151\145\167\040" + "\076\040\162\157\167\040\076\040\143\145\154\154\054\040\167\151" + "\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166" + "\151\145\167\056\143\157\154\165\155\156\055\163\145\160\141\162" + "\141\164\157\162\163\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\142\157\170\040\076\040\154\151\163\164\166\151" + "\145\167\040\076\040\162\157\167\040\076\040\143\145\154\154\054" + "\040\143\157\154\165\155\156\166\151\145\167\056\143\157\154\165" + "\155\156\055\163\145\160\141\162\141\164\157\162\163\040\076\040" + "\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156\054" + "\040\164\162\145\145\166\151\145\167\056\143\157\154\165\155\156" + "\055\163\145\160\141\162\141\164\157\162\163\056\166\151\145\167" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\143\157\154\165\155\156" + "\055\163\145\160\141\162\141\164\157\162\163\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040" + "\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156\040" + "\173\040\142\157\162\144\145\162\055\154\145\146\164\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\065\051\073\040\175\012" + "\012\143\157\154\165\155\156\166\151\145\167\040\076\040\154\151" + "\163\164\166\151\145\167\056\163\145\160\141\162\141\164\157\162" + "\163\072\156\157\164\050\056\150\157\162\151\172\157\156\164\141" + "\154\051\040\076\040\162\157\167\072\156\157\164\050\056\163\145" + "\160\141\162\141\164\157\162\051\054\040\164\162\145\145\166\151" + "\145\167\056\166\151\145\167\040\076\040\154\151\163\164\166\151" + "\145\167\056\163\145\160\141\162\141\164\157\162\163\072\156\157" + "\164\050\056\150\157\162\151\172\157\156\164\141\154\051\040\076" + "\040\162\157\167\072\156\157\164\050\056\163\145\160\141\162\141" + "\164\157\162\051\054\040\167\151\156\144\157\167\056\160\162\151" + "\156\164\040\164\162\145\145\166\151\145\167\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040" + "\154\151\163\164\166\151\145\167\056\163\145\160\141\162\141\164" + "\157\162\163\072\156\157\164\050\056\150\157\162\151\172\157\156" + "\164\141\154\051\040\076\040\162\157\167\072\156\157\164\050\056" + "\163\145\160\141\162\141\164\157\162\051\040\173\040\142\157\162" + "\144\145\162\055\164\157\160\072\040\061\160\170\040\163\157\154" + "\151\144\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\072\040\156\157\156\145\073" + "\040\175\012\012\143\157\154\165\155\156\166\151\145\167\056\144" + "\141\164\141\055\164\141\142\154\145\040\076\040\154\151\163\164" + "\166\151\145\167\040\076\040\162\157\167\040\076\040\143\145\154" + "\154\054\040\164\162\145\145\166\151\145\167\056\144\141\164\141" + "\055\164\141\142\154\145\056\166\151\145\167\040\076\040\154\151" + "\163\164\166\151\145\167\040\076\040\162\157\167\040\076\040\143" + "\145\154\154\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\164\162\145\145\166\151\145\167\056\144\141\164\141\055" + "\164\141\142\154\145\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\142\157\170\040\076\040\154\151\163\164\166\151" + "\145\167\040\076\040\162\157\167\040\076\040\143\145\154\154\040" + "\173\040\160\141\144\144\151\156\147\055\164\157\160\072\040\062" + "\160\170\073\040\160\141\144\144\151\156\147\055\142\157\164\164" + "\157\155\072\040\062\160\170\073\040\175\012\012\143\157\154\165" + "\155\156\166\151\145\167\040\176\040\165\156\144\145\162\163\150" + "\157\157\164\056\164\157\160\054\040\164\162\145\145\166\151\145" + "\167\056\166\151\145\167\040\176\040\165\156\144\145\162\163\150" + "\157\157\164\056\164\157\160\054\040\167\151\156\144\157\167\056" + "\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170" + "\040\176\040\165\156\144\145\162\163\150\157\157\164\056\164\157" + "\160\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\142\157\164\164\157\155\054\040\141\154\160\150" + "\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145\156" + "\164\040\064\160\170\051\073\040\175\012\012\143\157\154\165\155" + "\156\166\151\145\167\040\162\157\167\072\156\157\164\050\072\163" + "\145\154\145\143\164\145\144\051\040\143\145\154\154\040\145\144" + "\151\164\141\142\154\145\154\141\142\145\154\072\156\157\164\050" + "\056\145\144\151\164\151\156\147\051\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\054\040\164\162\145\145\166\151\145\167" + "\056\166\151\145\167\040\162\157\167\072\156\157\164\050\072\163" + "\145\154\145\143\164\145\144\051\040\143\145\154\154\040\145\144" + "\151\164\141\142\154\145\154\141\142\145\154\072\156\157\164\050" + "\056\145\144\151\164\151\156\147\051\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040" + "\162\157\167\072\156\157\164\050\072\163\145\154\145\143\164\145" + "\144\051\040\143\145\154\154\040\145\144\151\164\141\142\154\145" + "\154\141\142\145\154\072\156\157\164\050\056\145\144\151\164\151" + "\156\147\051\072\146\157\143\165\163\055\167\151\164\150\151\156" + "\040\173\040\157\165\164\154\151\156\145\072\040\062\160\170\040" + "\163\157\154\151\144\040\141\154\160\150\141\050\100\141\143\143" + "\145\156\164\137\143\157\154\157\162\054\060\056\070\051\073\040" + "\175\012\012\143\157\154\165\155\156\166\151\145\167\040\162\157" + "\167\072\156\157\164\050\072\163\145\154\145\143\164\145\144\051" + "\040\143\145\154\154\040\145\144\151\164\141\142\154\145\154\141" + "\142\145\154\056\145\144\151\164\151\156\147\072\146\157\143\165" + "\163\055\167\151\164\150\151\156\054\040\164\162\145\145\166\151" + "\145\167\056\166\151\145\167\040\162\157\167\072\156\157\164\050" + "\072\163\145\154\145\143\164\145\144\051\040\143\145\154\154\040" + "\145\144\151\164\141\142\154\145\154\141\142\145\154\056\145\144" + "\151\164\151\156\147\072\146\157\143\165\163\055\167\151\164\150" + "\151\156\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\162\157\167\072" + "\156\157\164\050\072\163\145\154\145\143\164\145\144\051\040\143" + "\145\154\154\040\145\144\151\164\141\142\154\145\154\141\142\145" + "\154\056\145\144\151\164\151\156\147\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\040\173\040\157\165\164\154\151\156\145" + "\072\040\062\160\170\040\163\157\154\151\144\040\100\141\143\143" + "\145\156\164\137\143\157\154\157\162\073\040\175\012\012\164\162" + "\145\145\145\170\160\141\156\144\145\162\040\173\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\064\160\170" + "\073\040\175\012\012\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\141\162\145\141\040\173\040\155\141\162\147\151" + "\156\072\040\066\160\170\073\040\142\157\162\144\145\162\055\163" + "\160\141\143\151\156\147\072\040\066\160\170\073\040\175\012\012" + "\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\040\120\162\151\156\164\040\144\151\141\154\157\147\040\052" + "\040\052\057\012\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\144\162\141\167\151\156\147\040\173\040\143\157\154\157\162" + "\072\040\100\167\151\156\144\157\167\137\146\147\137\143\157\154" + "\157\162\073\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\156\157\156\145\073\040\142\157\162\144\145\162\072\040\156\157" + "\156\145\073\040\160\141\144\144\151\156\147\072\040\060\073\040" + "\175\012\012\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\144\162\141\167\151\156\147\040\160\141\160\145\162\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\167\150\151\164\145\073\040\143\157\154\157\162\072\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\070\051\073\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\154\151\160\072\040\160\141\144\144\151\156\147\055\142\157\170" + "\073\040\142\157\162\144\145\162\072\040\061\160\170\040\163\157" + "\154\151\144\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\065\051\073\040\175\012\012" + "\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\040\120\141\147\145\040\163\145\164\165\160" + "\040\144\141\154\157\147\040\052\040\052\057\012\057\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040" + "\107\164\153\101\142\157\165\164\104\151\141\154\157\147\040\052" + "\040\052\057\012\167\151\156\144\157\167\056\141\142\157\165\164" + "\144\151\141\154\157\147\040\151\155\141\147\145\056\154\141\162" + "\147\145\055\151\143\157\156\163\040\173\040\055\147\164\153\055" + "\151\143\157\156\055\163\151\172\145\072\040\061\062\070\160\170" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040" + "\107\164\153\103\157\154\157\162\103\150\157\157\163\145\162\104" + "\151\141\154\157\147\040\052\040\052\057\012\057\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\040\101\144\167\104\151\141" + "\154\157\147\040\052\040\052\057\012\146\154\157\141\164\151\156" + "\147\055\163\150\145\145\164\040\076\040\144\151\155\155\151\156" + "\147\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\100\163\150\141" + "\144\145\137\143\157\154\157\162\054\062\051\073\040\175\012\012" + "\146\154\157\141\164\151\156\147\055\163\150\145\145\164\040\076" + "\040\163\150\145\145\164\040\173\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\061\062\160\170\073\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\060\040\062\160\170\040" + "\070\160\170\040\062\160\170\040\162\147\142\141\050\060\054\040" + "\060\054\040\060\054\040\060\056\060\067\051\054\040\060\040\063" + "\160\170\040\062\060\160\170\040\061\060\160\170\040\162\147\142" + "\141\050\060\054\040\060\054\040\060\054\040\060\056\060\065\051" + "\054\040\060\040\066\160\170\040\063\062\160\170\040\061\066\160" + "\170\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\060\062\051\054\040\060\040\060\040\060\040\061\160\170" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\070\051\073\040\157\165\164\154\151\156\145\072\040\061\160" + "\170\040\163\157\154\151\144\040\162\147\142\141\050\062\065\065" + "\054\040\062\065\065\054\040\062\065\065\054\040\060\056\063\051" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\055\061\160\170\073\040\175\012\012\144\151\141\154\157" + "\147\056\142\157\164\164\157\155\055\163\150\145\145\164\056\154" + "\141\156\144\163\143\141\160\145\040\163\150\145\145\164\040\173" + "\040\155\141\162\147\151\156\055\154\145\146\164\072\040\063\060" + "\160\170\073\040\155\141\162\147\151\156\055\162\151\147\150\164" + "\072\040\063\060\160\170\073\040\175\012\012\144\151\141\154\157" + "\147\056\142\157\164\164\157\155\055\163\150\145\145\164\056\154" + "\141\156\144\163\143\141\160\145\040\163\150\145\145\164\040\076" + "\040\157\165\164\154\151\156\145\056\146\154\165\163\150\055\154" + "\145\146\164\054\040\144\151\141\154\157\147\056\142\157\164\164" + "\157\155\055\163\150\145\145\164\056\154\141\156\144\163\143\141" + "\160\145\040\163\150\145\145\164\040\076\040\157\165\164\154\151" + "\156\145\056\146\154\165\163\150\055\162\151\147\150\164\054\040" + "\144\151\141\154\157\147\056\142\157\164\164\157\155\055\163\150" + "\145\145\164\056\154\141\156\144\163\143\141\160\145\040\163\150" + "\145\145\164\040\076\040\157\165\164\154\151\156\145\056\146\154" + "\165\163\150\055\154\145\146\164\056\146\154\165\163\150\055\162" + "\151\147\150\164\040\173\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\061\160\170\040\060\040\162" + "\147\142\141\050\062\065\065\054\040\062\065\065\054\040\062\065" + "\065\054\040\060\056\063\051\054\040\151\156\163\145\164\040\055" + "\061\160\170\040\060\040\162\147\142\141\050\062\065\065\054\040" + "\062\065\065\054\040\062\065\065\054\040\060\056\063\051\054\040" + "\151\156\163\145\164\040\060\040\061\160\170\040\162\147\142\141" + "\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040" + "\060\056\063\051\073\040\175\012\012\144\151\141\154\157\147\055" + "\150\157\163\164\040\076\040\144\151\141\154\157\147\056\142\141" + "\143\153\147\162\157\165\156\144\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\156\157\156\145\073\040\175\012\012" + "\144\151\141\154\157\147\055\150\157\163\164\040\076\040\144\151" + "\141\154\157\147\056\142\141\143\153\147\162\157\165\156\144\040" + "\163\150\145\145\164\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\100\167\151\156\144\157" + "\167\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157" + "\162\072\040\100\167\151\156\144\157\167\137\146\147\137\143\157" + "\154\157\162\073\040\175\012\012\144\151\141\154\157\147\055\150" + "\157\163\164\040\076\040\144\151\141\154\157\147\056\166\151\145" + "\167\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\144\151\141\154\157\147\055\150\157\163\164\040\076\040\144\151" + "\141\154\157\147\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\142\157\170\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\156\157\156\145\073\040\175\012\012\144\151" + "\141\154\157\147\055\150\157\163\164\040\076\040\144\151\141\154" + "\157\147\056\157\163\144\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\156\157\156\145\073\040\175\012\012\057\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\040\107\164\153\101\160\160\103\150\157" + "\157\163\145\162\104\151\141\154\157\147\040\052\040\052\057\012" + "\167\151\156\144\157\167\056\141\160\160\143\150\157\157\163\145" + "\162\040\150\145\141\144\145\162\142\141\162\056\164\151\164\154" + "\145\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156" + "\144\154\145\040\173\040\160\141\144\144\151\156\147\055\164\157" + "\160\072\040\063\160\170\073\040\175\012\012\167\151\156\144\157" + "\167\056\141\160\160\143\150\157\157\163\145\162\040\150\145\141" + "\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040" + "\142\157\170\056\163\164\141\162\164\040\053\040\142\157\170\040" + "\173\040\155\141\162\147\151\156\055\164\157\160\072\040\055\066" + "\160\170\073\040\155\141\162\147\151\156\055\142\157\164\164\157" + "\155\072\040\055\066\160\170\073\040\155\151\156\055\150\145\151" + "\147\150\164\072\040\061\062\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\056\141\160\160\143\150\157\157\163\145\162\040" + "\163\145\141\162\143\150\142\141\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\156\157\156\145\073\040\175\012" + "\012\167\151\156\144\157\167\056\141\160\160\143\150\157\157\163" + "\145\162\040\056\144\151\141\154\157\147\055\166\142\157\170\040" + "\076\040\142\157\170\040\076\040\142\157\170\072\156\157\164\050" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\141" + "\162\145\141\051\040\173\040\155\141\162\147\151\156\072\040\066" + "\160\170\073\040\175\012\012\167\151\156\144\157\167\056\141\160" + "\160\143\150\157\157\163\145\162\040\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\141\162\145\141\040\173\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\060\073\040\175\012" + "\012\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\040\107\164\153\101\163\163\151\163\164\141\156\164\040" + "\052\040\052\057\012\167\151\156\144\157\167\056\141\163\163\151" + "\163\164\141\156\164\040\056\163\151\144\145\142\141\162\040\173" + "\040\160\141\144\144\151\156\147\072\040\066\160\170\073\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\100\163\151\144\145\142\141\162\137\142\147\137\143\157\154" + "\157\162\073\040\143\157\154\157\162\072\040\100\163\151\144\145" + "\142\141\162\137\146\147\137\143\157\154\157\162\073\040\175\012" + "\012\167\151\156\144\157\167\056\141\163\163\151\163\164\141\156" + "\164\040\056\163\151\144\145\142\141\162\072\156\157\164\050\163" + "\145\160\141\162\141\164\157\162\051\072\144\151\162\050\154\164" + "\162\051\040\173\040\142\157\162\144\145\162\055\162\151\147\150" + "\164\072\040\156\157\156\145\073\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\151\156\163\145\164\040\055\061\160\170\040" + "\060\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\065\051\073\040\175\012\012\167\151" + "\156\144\157\167\056\141\163\163\151\163\164\141\156\164\040\056" + "\163\151\144\145\142\141\162\072\156\157\164\050\163\145\160\141" + "\162\141\164\157\162\051\072\144\151\162\050\162\164\154\051\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\061\160\170\040\060\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065" + "\051\073\040\175\012\012\167\151\156\144\157\167\056\141\163\163" + "\151\163\164\141\156\164\040\056\163\151\144\145\142\141\162\072" + "\142\141\143\153\144\162\157\160\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\100\163\151" + "\144\145\142\141\162\137\142\141\143\153\144\162\157\160\137\143" + "\157\154\157\162\073\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\040\062\060\060\155\163\040\145\141\163\145\055\157\165" + "\164\073\040\175\012\012\167\151\156\144\157\167\056\141\163\163" + "\151\163\164\141\156\164\040\056\163\151\144\145\142\141\162\040" + "\076\040\154\141\142\145\154\040\173\040\160\141\144\144\151\156" + "\147\072\040\066\160\170\040\061\062\160\170\073\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\066\160\170\073" + "\040\175\012\012\167\151\156\144\157\167\056\141\163\163\151\163" + "\164\141\156\164\040\056\163\151\144\145\142\141\162\040\076\040" + "\154\141\142\145\154\056\150\151\147\150\154\151\147\150\164\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\051\073\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\060\040\060\040\061\160\170\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\040\107\164\153\103\157\155\142\157\102\157" + "\170\040\052\040\052\057\012\143\157\155\142\157\142\157\170\040" + "\142\165\164\164\157\156\040\173\040\160\141\144\144\151\156\147" + "\055\164\157\160\072\040\062\160\170\073\040\160\141\144\144\151" + "\156\147\055\142\157\164\164\157\155\072\040\062\160\170\073\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\063\060\160\170" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\040\107\164\153\111\143\157\156\126\151\145" + "\167\040\052\040\052\057\012\151\143\157\156\166\151\145\167\072" + "\163\145\154\145\143\164\145\144\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040\060" + "\040\060\040\061\160\170\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040" + "\175\012\012\151\143\157\156\166\151\145\167\040\173\040\157\165" + "\164\154\151\156\145\072\040\060\040\163\157\154\151\144\040\164" + "\162\141\156\163\160\141\162\145\156\164\073\040\157\165\164\154" + "\151\156\145\055\157\146\146\163\145\164\072\040\064\160\170\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\157\165\164" + "\154\151\156\145\055\143\157\154\157\162\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\073\040\175\012\012\151" + "\143\157\156\166\151\145\167\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\040\173\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\100\141\143\143\145\156\164\137\143\157\154\157\162" + "\054\060\056\070\051\073\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\072\040\062\160\170\073\040\157\165\164\154\151" + "\156\145\055\157\146\146\163\145\164\072\040\055\062\160\170\073" + "\040\175\012\012\151\143\157\156\166\151\145\167\072\144\162\157" + "\160\050\141\143\164\151\166\145\051\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\156\157\156\145\073\040\175\012" + "\012\151\143\157\156\166\151\145\167\040\076\040\144\156\144\164" + "\141\162\147\145\164\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\040\173\040\142\157\162\144\145\162\055\163\164\171\154" + "\145\072\040\163\157\154\151\144\073\040\142\157\162\144\145\162" + "\055\167\151\144\164\150\072\040\061\160\170\073\040\142\157\162" + "\144\145\162\055\143\157\154\157\162\072\040\100\141\143\143\145" + "\156\164\137\142\147\137\143\157\154\157\162\073\040\175\012\012" + "\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040" + "\107\164\153\111\156\146\157\102\141\162\040\052\040\052\057\012" + "\151\156\146\157\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\173\040\160\141\144\144\151" + "\156\147\072\040\066\160\170\073\040\160\141\144\144\151\156\147" + "\055\142\157\164\164\157\155\072\040\067\160\170\073\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160" + "\170\073\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\060\040\055\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\175\012\012\151\156\146\157\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\076\040\142\157\170\040\173\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\066\160\170\073\040\175\012" + "\012\151\156\146\157\142\141\162\056\141\143\164\151\157\156\072" + "\150\157\166\145\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\151\155\141\147\145\072\040\151\155\141\147\145" + "\050\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\060\065\051\051\073\040\175\012\012\151" + "\156\146\157\142\141\162\056\141\143\164\151\157\156\072\141\143" + "\164\151\166\145\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\151\155\141\147\145\072\040\151\155\141\147\145\050" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\061\051\051\073\040\175\012\012\151\156\146" + "\157\142\141\162\056\151\156\146\157\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\155" + "\151\170\050\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\054\100\167\151\156\144\157\167\137\142\147\137\143" + "\157\154\157\162\054\060\056\067\051\073\040\143\157\154\157\162" + "\072\040\100\167\151\156\144\157\167\137\146\147\137\143\157\154" + "\157\162\073\040\175\012\012\151\156\146\157\142\141\162\056\161" + "\165\145\163\164\151\157\156\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\155\151\170" + "\050\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\054\100\167\151\156\144\157\167\137\142\147\137\143\157\154" + "\157\162\054\060\056\067\051\073\040\143\157\154\157\162\072\040" + "\100\167\151\156\144\157\167\137\146\147\137\143\157\154\157\162" + "\073\040\175\012\012\151\156\146\157\142\141\162\056\167\141\162" + "\156\151\156\147\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\155\151\170\050\100\167" + "\141\162\156\151\156\147\137\142\147\137\143\157\154\157\162\054" + "\100\167\151\156\144\157\167\137\142\147\137\143\157\154\157\162" + "\054\060\056\067\051\073\040\143\157\154\157\162\072\040\100\167" + "\151\156\144\157\167\137\146\147\137\143\157\154\157\162\073\040" + "\175\012\012\151\156\146\157\142\141\162\056\145\162\162\157\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\155\151\170\050\100\145\162\162\157\162" + "\137\142\147\137\143\157\154\157\162\054\100\167\151\156\144\157" + "\167\137\142\147\137\143\157\154\157\162\054\060\056\067\051\073" + "\040\143\157\154\157\162\072\040\100\167\151\156\144\157\167\137" + "\146\147\137\143\157\154\157\162\073\040\175\012\012\151\156\146" + "\157\142\141\162\040\056\143\154\157\163\145\040\173\040\155\151" + "\156\055\167\151\144\164\150\072\040\061\070\160\170\073\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\061\070\160\170\073" + "\040\160\141\144\144\151\156\147\072\040\064\160\170\073\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\065\060" + "\045\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\040\107\164\153\123\164\141\164\165" + "\163\102\141\162\040\052\040\052\057\012\163\164\141\164\165\163" + "\142\141\162\040\173\040\160\141\144\144\151\156\147\072\040\066" + "\160\170\040\061\060\160\170\040\066\160\170\040\061\060\160\170" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\040\107\164\153\124\162\145\145\126\151\145" + "\167\040\052\040\052\057\012\164\162\145\145\166\151\145\167\056" + "\166\151\145\167\054\040\167\151\156\144\157\167\056\160\162\151" + "\156\164\040\164\162\145\145\166\151\145\167\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\142\157\170\040\173\040" + "\142\157\162\144\145\162\055\154\145\146\164\055\143\157\154\157" + "\162\072\040\155\151\170\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\100\166\151\145\167\137\142\147\137\143\157\154" + "\157\162\054\060\056\066\051\073\040\142\157\162\144\145\162\055" + "\164\157\160\055\143\157\154\157\162\072\040\155\151\170\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\100\166\151\145" + "\167\137\142\147\137\143\157\154\157\162\054\060\056\066\051\073" + "\040\175\012\012\164\162\145\145\166\151\145\167\056\166\151\145" + "\167\072\163\145\154\145\143\164\145\144\072\146\157\143\165\163" + "\054\040\164\162\145\145\166\151\145\167\056\166\151\145\167\072" + "\163\145\154\145\143\164\145\144\054\040\167\151\156\144\157\167" + "\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\072\163\145\154\145\143\164\145\144\040\173\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\060\073\040\175" + "\012\012\164\162\145\145\166\151\145\167\056\166\151\145\167\056" + "\163\145\160\141\162\141\164\157\162\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167" + "\056\163\145\160\141\162\141\164\157\162\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\040\173\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\062\160\170\073\040" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040" + "\175\012\012\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\056\145\170\160\141\156\144\145\162\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167" + "\056\145\170\160\141\156\144\145\162\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\173\040\155\151" + "\156\055\167\151\144\164\150\072\040\061\066\160\170\073\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\061\066\160\170\073" + "\040\055\147\164\153\055\151\143\157\156\055\163\157\165\162\143" + "\145\072\040\055\147\164\153\055\151\143\157\156\164\150\145\155" + "\145\050\042\160\141\156\055\145\156\144\055\163\171\155\142\157" + "\154\151\143\042\051\073\040\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\067\051\073\040\175\012\012\164\162\145\145\166\151" + "\145\167\056\166\151\145\167\056\145\170\160\141\156\144\145\162" + "\072\144\151\162\050\162\164\154\051\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167" + "\056\145\170\160\141\156\144\145\162\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\072\144\151\162\050" + "\162\164\154\051\040\173\040\055\147\164\153\055\151\143\157\156" + "\055\163\157\165\162\143\145\072\040\055\147\164\153\055\151\143" + "\157\156\164\150\145\155\145\050\042\160\141\156\055\145\156\144" + "\055\163\171\155\142\157\154\151\143\055\162\164\154\042\051\073" + "\040\175\012\012\164\162\145\145\166\151\145\167\056\166\151\145" + "\167\056\145\170\160\141\156\144\145\162\072\150\157\166\145\162" + "\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164" + "\162\145\145\166\151\145\167\056\145\170\160\141\156\144\145\162" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142" + "\157\170\072\150\157\166\145\162\054\040\164\162\145\145\166\151" + "\145\167\056\166\151\145\167\056\145\170\160\141\156\144\145\162" + "\072\141\143\164\151\166\145\054\040\167\151\156\144\157\167\056" + "\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056\145" + "\170\160\141\156\144\145\162\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\072\141\143\164\151\166\145" + "\040\173\040\143\157\154\157\162\072\040\143\165\162\162\145\156" + "\164\103\157\154\157\162\073\040\175\012\012\164\162\145\145\166" + "\151\145\167\056\166\151\145\167\056\145\170\160\141\156\144\145" + "\162\072\143\150\145\143\153\145\144\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167" + "\056\145\170\160\141\156\144\145\162\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\072\143\150\145\143" + "\153\145\144\040\173\040\055\147\164\153\055\151\143\157\156\055" + "\163\157\165\162\143\145\072\040\055\147\164\153\055\151\143\157" + "\156\164\150\145\155\145\050\042\160\141\156\055\144\157\167\156" + "\055\163\171\155\142\157\154\151\143\042\051\073\040\175\012\012" + "\164\162\145\145\166\151\145\167\056\166\151\145\167\056\145\170" + "\160\141\156\144\145\162\072\144\151\163\141\142\154\145\144\054" + "\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164\162" + "\145\145\166\151\145\167\056\145\170\160\141\156\144\145\162\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\072\144\151\163\141\142\154\145\144\040\173\040\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\064\051\073\040\175\012\012" + "\164\162\145\145\166\151\145\167\056\166\151\145\167\040\076\040" + "\144\156\144\164\141\162\147\145\164\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040" + "\076\040\144\156\144\164\141\162\147\145\164\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\040\173\040\142\157\162\144\145" + "\162\055\163\164\171\154\145\072\040\163\157\154\151\144\040\156" + "\157\156\145\073\040\142\157\162\144\145\162\055\167\151\144\164" + "\150\072\040\061\160\170\073\040\142\157\162\144\145\162\055\143" + "\157\154\157\162\072\040\100\141\143\143\145\156\164\137\142\147" + "\137\143\157\154\157\162\073\040\175\012\012\164\162\145\145\166" + "\151\145\167\056\166\151\145\167\040\076\040\144\156\144\164\141" + "\162\147\145\164\056\141\146\164\145\162\072\144\162\157\160\050" + "\141\143\164\151\166\145\051\054\040\167\151\156\144\157\167\056" + "\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170" + "\040\076\040\144\156\144\164\141\162\147\145\164\056\141\146\164" + "\145\162\072\144\162\157\160\050\141\143\164\151\166\145\051\040" + "\173\040\142\157\162\144\145\162\055\164\157\160\055\163\164\171" + "\154\145\072\040\156\157\156\145\073\040\175\012\012\164\162\145" + "\145\166\151\145\167\056\166\151\145\167\040\076\040\144\156\144" + "\164\141\162\147\145\164\056\142\145\146\157\162\145\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\054\040\167\151\156\144" + "\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145" + "\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\040\076\040\144\156\144\164\141\162\147\145\164\056" + "\142\145\146\157\162\145\072\144\162\157\160\050\141\143\164\151" + "\166\145\051\040\173\040\142\157\162\144\145\162\055\142\157\164" + "\164\157\155\055\163\164\171\154\145\072\040\156\157\156\145\073" + "\040\175\012\012\164\162\145\145\166\151\145\167\056\166\151\145" + "\167\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164" + "\164\157\156\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040\150" + "\145\141\144\145\162\040\076\040\142\165\164\164\157\156\040\173" + "\040\160\141\144\144\151\156\147\055\154\145\146\164\072\040\064" + "\160\170\073\040\160\141\144\144\151\156\147\055\162\151\147\150" + "\164\072\040\064\160\170\073\040\142\157\162\144\145\162\055\142" + "\157\164\164\157\155\072\040\061\160\170\040\163\157\154\151\144" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\073\040\175\012\012\164\162\145" + "\145\166\151\145\167\056\166\151\145\167\056\160\162\157\147\162" + "\145\163\163\142\141\162\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\160\162" + "\157\147\162\145\163\163\142\141\162\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\156\157\156\145\073\040" + "\175\012\012\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\056\160\162\157\147\162\145\163\163\142\141\162\054\040\167\151" + "\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166" + "\151\145\167\056\160\162\157\147\162\145\163\163\142\141\162\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\054\040\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\056\160\162\157\147\162\145\163\163\142\141\162\072\163\145\154" + "\145\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157" + "\162\072\040\100\141\143\143\145\156\164\137\146\147\137\143\157" + "\154\157\162\073\040\175\012\012\164\162\145\145\166\151\145\167" + "\056\166\151\145\167\056\164\162\157\165\147\150\054\040\167\151" + "\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166" + "\151\145\167\056\164\162\157\165\147\150\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\051\073\040\175\012\012\164\162\145" + "\145\166\151\145\167\056\166\151\145\167\040\176\040\165\156\144" + "\145\162\163\150\157\157\164\056\164\157\160\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151" + "\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\142\157\170\040\176\040\165\156\144\145\162\163\150\157\157" + "\164\056\164\157\160\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\156\157\156\145\073\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\156\157\156\145\073\040\175\012\012\164" + "\162\145\145\166\151\145\167\056\166\151\145\167\040\141\143\143" + "\145\154\145\144\151\164\157\162\040\076\040\154\141\142\145\154" + "\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164" + "\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\040\141\143\143\145\154\145" + "\144\151\164\157\162\040\076\040\154\141\142\145\154\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\155\151\170\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\100\166\151\145\167\137\142\147\137\143\157\154\157" + "\162\054\060\056\071\051\073\040\175\012\012\164\162\145\145\166" + "\151\145\167\056\156\141\166\151\147\141\164\151\157\156\055\163" + "\151\144\145\142\141\162\040\173\040\160\141\144\144\151\156\147" + "\072\040\060\073\040\175\012\012\164\162\145\145\166\151\145\167" + "\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145" + "\142\141\162\072\163\145\154\145\143\164\145\144\072\146\157\143" + "\165\163\054\040\164\162\145\145\166\151\145\167\056\156\141\166" + "\151\147\141\164\151\157\156\055\163\151\144\145\142\141\162\072" + "\163\145\154\145\143\164\145\144\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\051\073\040\175\012\012\164\162\145\145\166\151\145" + "\167\040\145\156\164\162\171\072\146\157\143\165\163\055\167\151" + "\164\150\151\156\072\144\151\162\050\162\164\154\051\054\040\164" + "\162\145\145\166\151\145\167\040\145\156\164\162\171\072\146\157" + "\143\165\163\055\167\151\164\150\151\156\072\144\151\162\050\154" + "\164\162\051\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\166\151\145\167\137\142\147" + "\137\143\157\154\157\162\073\040\164\162\141\156\163\151\164\151" + "\157\156\055\160\162\157\160\145\162\164\171\072\040\143\157\154" + "\157\162\054\040\142\141\143\153\147\162\157\165\156\144\073\040" + "\175\012\012\164\162\145\145\166\151\145\167\040\145\156\164\162" + "\171\056\146\154\141\164\054\040\164\162\145\145\166\151\145\167" + "\040\145\156\164\162\171\040\173\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\156\157\156" + "\145\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\100\166\151\145\167\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\164\162\145\145\166\151\145\167" + "\040\145\156\164\162\171\056\146\154\141\164\072\146\157\143\165" + "\163\055\167\151\164\150\151\156\054\040\164\162\145\145\166\151" + "\145\167\040\145\156\164\162\171\072\146\157\143\165\163\055\167" + "\151\164\150\151\156\040\173\040\142\157\162\144\145\162\055\143" + "\157\154\157\162\072\040\100\141\143\143\145\156\164\137\143\157" + "\154\157\162\073\040\175\012\012\164\162\145\145\166\151\145\167" + "\040\163\160\151\156\142\165\164\164\157\156\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\173\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\060\073\040\142\157\162\144" + "\145\162\055\163\164\171\154\145\072\040\156\157\156\145\073\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\060" + "\073\040\175\012\012\164\162\145\145\166\151\145\167\040\163\160" + "\151\156\142\165\164\164\157\156\072\156\157\164\050\056\166\145" + "\162\164\151\143\141\154\051\040\076\040\164\145\170\164\040\173" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\060\073\040" + "\160\141\144\144\151\156\147\072\040\061\160\170\040\062\160\170" + "\073\040\175\012\012\056\163\151\144\145\142\141\162\072\156\157" + "\164\050\163\145\160\141\162\141\164\157\162\051\072\144\151\162" + "\050\154\164\162\051\054\040\056\163\151\144\145\142\141\162\056" + "\154\145\146\164\072\156\157\164\050\163\145\160\141\162\141\164" + "\157\162\051\054\040\056\163\151\144\145\142\141\162\056\154\145" + "\146\164\072\156\157\164\050\163\145\160\141\162\141\164\157\162" + "\051\072\144\151\162\050\162\164\154\051\040\173\040\142\157\162" + "\144\145\162\055\162\151\147\150\164\072\040\061\160\170\040\163" + "\157\154\151\144\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\065\051\073\040\142\157" + "\162\144\145\162\055\154\145\146\164\055\163\164\171\154\145\072" + "\040\156\157\156\145\073\040\175\012\012\056\163\151\144\145\142" + "\141\162\072\156\157\164\050\163\145\160\141\162\141\164\157\162" + "\051\072\144\151\162\050\162\164\154\051\054\040\056\163\151\144" + "\145\142\141\162\056\162\151\147\150\164\072\156\157\164\050\163" + "\145\160\141\162\141\164\157\162\051\040\173\040\142\157\162\144" + "\145\162\055\154\145\146\164\072\040\061\160\170\040\163\157\154" + "\151\144\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\142\157\162\144" + "\145\162\055\162\151\147\150\164\055\163\164\171\154\145\072\040" + "\156\157\156\145\073\040\175\012\012\056\163\151\144\145\142\141" + "\162\040\154\151\163\164\166\151\145\167\056\166\151\145\167\054" + "\040\056\163\151\144\145\142\141\162\040\167\151\156\144\157\167" + "\056\160\162\151\156\164\040\154\151\163\164\166\151\145\167\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\056\163\151\144\145\142\141\162\040\154\151\163\164\166\151\145" + "\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\054\040\056\163\151\144\145\142\141\162\040\154\151" + "\163\164\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\143\157\154\157\162\072\040\151\156\150\145\162" + "\151\164\073\040\175\012\012\160\141\156\145\144\040\056\163\151" + "\144\145\142\141\162\056\154\145\146\164\054\040\160\141\156\145" + "\144\040\056\163\151\144\145\142\141\162\056\162\151\147\150\164" + "\054\040\160\141\156\145\144\040\056\163\151\144\145\142\141\162" + "\056\154\145\146\164\072\144\151\162\050\162\164\154\051\054\040" + "\160\141\156\145\144\040\056\163\151\144\145\142\141\162\072\144" + "\151\162\050\162\164\154\051\054\040\160\141\156\145\144\040\056" + "\163\151\144\145\142\141\162\072\144\151\162\050\154\164\162\051" + "\054\040\160\141\156\145\144\040\056\163\151\144\145\142\141\162" + "\040\173\040\142\157\162\144\145\162\055\163\164\171\154\145\072" + "\040\156\157\156\145\073\040\175\012\012\056\154\141\162\147\145" + "\055\164\151\164\154\145\040\173\040\146\157\156\164\055\167\145" + "\151\147\150\164\072\040\063\060\060\073\040\146\157\156\164\055" + "\163\151\172\145\072\040\062\064\160\164\073\040\175\012\012\144" + "\162\157\160\144\157\167\156\040\076\040\142\165\164\164\157\156" + "\040\076\040\142\157\170\054\040\143\157\155\142\157\142\157\170" + "\040\076\040\142\165\164\164\157\156\040\076\040\142\157\170\040" + "\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\066\160\170\073\040\175\012\012\144\162\157\160\144\157" + "\167\156\040\076\040\142\165\164\164\157\156\040\076\040\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\162\157\167\056" + "\141\143\164\151\166\141\164\141\142\154\145\072\150\157\166\145" + "\162\054\040\143\157\155\142\157\142\157\170\040\076\040\142\165" + "\164\164\157\156\040\076\040\142\157\170\040\076\040\163\164\141" + "\143\153\040\076\040\162\157\167\056\141\143\164\151\166\141\164" + "\141\142\154\145\072\150\157\166\145\162\054\040\144\162\157\160" + "\144\157\167\156\040\076\040\142\165\164\164\157\156\040\076\040" + "\142\157\170\040\076\040\163\164\141\143\153\040\076\040\162\157" + "\167\056\141\143\164\151\166\141\164\141\142\154\145\072\141\143" + "\164\151\166\145\054\040\143\157\155\142\157\142\157\170\040\076" + "\040\142\165\164\164\157\156\040\076\040\142\157\170\040\076\040" + "\163\164\141\143\153\040\076\040\162\157\167\056\141\143\164\151" + "\166\141\164\141\142\154\145\072\141\143\164\151\166\145\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156" + "\145\073\040\175\012\012\144\162\157\160\144\157\167\156\040\141" + "\162\162\157\167\054\040\143\157\155\142\157\142\157\170\040\141" + "\162\162\157\167\040\173\040\055\147\164\153\055\151\143\157\156" + "\055\163\157\165\162\143\145\072\040\055\147\164\153\055\151\143" + "\157\156\164\150\145\155\145\050\042\160\141\156\055\144\157\167" + "\156\055\163\171\155\142\157\154\151\143\042\051\073\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\061\066\160\170\073\040" + "\155\151\156\055\167\151\144\164\150\072\040\061\066\160\170\073" + "\040\175\012\012\144\162\157\160\144\157\167\156\072\144\162\157" + "\160\050\141\143\164\151\166\145\051\054\040\143\157\155\142\157" + "\142\157\170\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\175\012\012\144\162\157\160\144\157\167\156" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\054\040\143" + "\157\155\142\157\142\157\170\040\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\173\040\160\141\144\144\151\156\147\055\164" + "\157\160\072\040\066\160\170\073\040\175\012\012\144\162\157\160" + "\144\157\167\156\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\154\151\163\164\166\151\145\167\040\076\040\162\157\167" + "\054\040\143\157\155\142\157\142\157\170\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\154\151\163\164\166\151\145\167" + "\040\076\040\162\157\167\040\173\040\155\151\156\055\167\151\144" + "\164\150\072\040\060\073\040\175\012\012\144\162\157\160\144\157" + "\167\156\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\056\144\162\157\160\144\157\167\156\055\163\145\141\162\143\150" + "\142\141\162\054\040\143\157\155\142\157\142\157\170\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\056\144\162\157\160" + "\144\157\167\156\055\163\145\141\162\143\150\142\141\162\040\173" + "\040\160\141\144\144\151\156\147\072\040\066\160\170\073\040\175" + "\012\012\144\162\157\160\144\157\167\156\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\056\144\162\157\160\144\157\167" + "\156\055\163\145\141\162\143\150\142\141\162\040\053\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\040\076\040\165" + "\156\144\145\162\163\150\157\157\164\056\164\157\160\054\040\143" + "\157\155\142\157\142\157\170\040\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\056\144\162\157\160\144\157\167\156\055\163" + "\145\141\162\143\150\142\141\162\040\053\040\163\143\162\157\154" + "\154\145\144\167\151\156\144\157\167\040\076\040\165\156\144\145" + "\162\163\150\157\157\164\056\164\157\160\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\061\160\170\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\065\051\073\040\142\141" + "\143\153\147\162\157\165\156\144\072\040\154\151\156\145\141\162" + "\055\147\162\141\144\151\145\156\164\050\164\157\040\142\157\164" + "\164\157\155\054\040\141\154\160\150\141\050\100\160\157\160\157" + "\166\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\040\064\160\170\051\073\040\175\012\012\160\157\160\157" + "\166\145\162\056\145\155\157\152\151\055\160\151\143\153\145\162" + "\040\076\040\143\157\156\164\145\156\164\163\040\173\040\160\141" + "\144\144\151\156\147\072\040\060\073\040\175\012\012\056\145\155" + "\157\152\151\055\163\145\141\162\143\150\142\141\162\040\173\040" + "\160\141\144\144\151\156\147\072\040\066\160\170\073\040\175\012" + "\012\056\145\155\157\152\151\055\164\157\157\154\142\141\162\040" + "\173\040\160\141\144\144\151\156\147\072\040\063\160\170\073\040" + "\175\012\012\142\165\164\164\157\156\056\145\155\157\152\151\055" + "\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\173" + "\040\155\151\156\055\167\151\144\164\150\072\040\063\062\160\170" + "\073\040\155\151\156\055\150\145\151\147\150\164\072\040\063\062" + "\160\170\073\040\175\012\012\160\157\160\157\166\145\162\056\145" + "\155\157\152\151\055\160\151\143\153\145\162\040\145\155\157\152" + "\151\040\173\040\146\157\156\164\055\163\151\172\145\072\040\170" + "\055\154\141\162\147\145\073\040\160\141\144\144\151\156\147\072" + "\040\066\160\170\073\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\066\160\170\073\040\175\012\012\160\157\160" + "\157\166\145\162\056\145\155\157\152\151\055\160\151\143\153\145" + "\162\040\145\155\157\152\151\072\146\157\143\165\163\054\040\160" + "\157\160\157\166\145\162\056\145\155\157\152\151\055\160\151\143" + "\153\145\162\040\145\155\157\152\151\072\150\157\166\145\162\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\060\067\051\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\145\155\157\152\151\055\160\151\143\153\145\162\040" + "\145\155\157\152\151\072\141\143\164\151\166\145\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\061\066\051\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\145\155\157\152\151\055\160\151\143\153\145\162\040\145\155\157" + "\152\151\072\146\157\143\165\163\054\040\160\157\160\157\166\145" + "\162\056\145\155\157\152\151\055\160\151\143\153\145\162\040\145" + "\155\157\152\151\072\150\157\166\145\162\054\040\160\157\160\157" + "\166\145\162\056\145\155\157\152\151\055\160\151\143\153\145\162" + "\040\145\155\157\152\151\072\141\143\164\151\166\145\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\060\040\060\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\145\155\157\152\151\055\160\151\143\153\145\162\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\056\166\151\145\167" + "\054\040\160\157\160\157\166\145\162\056\145\155\157\152\151\055" + "\160\151\143\153\145\162\040\167\151\156\144\157\167\056\160\162" + "\151\156\164\040\163\143\162\157\154\154\145\144\167\151\156\144" + "\157\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\142\157\170\054\040\167\151\156\144\157\167\056\160\162\151" + "\156\164\040\160\157\160\157\166\145\162\056\145\155\157\152\151" + "\055\160\151\143\153\145\162\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\056\144\151\141\154\157\147\055\141\143" + "\164\151\157\156\055\142\157\170\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\156\157\156\145\073\040\143\157\154" + "\157\162\072\040\151\156\150\145\162\151\164\073\040\175\012\012" + "\160\157\160\157\166\145\162\056\145\155\157\152\151\055\160\151" + "\143\153\145\162\040\163\143\162\157\154\154\145\144\167\151\156" + "\144\157\167\056\166\151\145\167\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\164\157\160\054\040\160\157\160\157\166" + "\145\162\056\145\155\157\152\151\055\160\151\143\153\145\162\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\164\157\160\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\160\157\160" + "\157\166\145\162\056\145\155\157\152\151\055\160\151\143\153\145" + "\162\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142" + "\157\170\040\076\040\165\156\144\145\162\163\150\157\157\164\056" + "\164\157\160\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\151\156\163\145\164\040\060\040\061\160\170\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\065\051\073\040\142\141\143\153\147\162\157\165\156" + "\144\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145" + "\156\164\050\164\157\040\142\157\164\164\157\155\054\040\141\154" + "\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040" + "\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051" + "\073\040\175\012\012\160\157\160\157\166\145\162\056\145\155\157" + "\152\151\055\160\151\143\153\145\162\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\056\166\151\145\167\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\142\157\164\164\157" + "\155\054\040\160\157\160\157\166\145\162\056\145\155\157\152\151" + "\055\160\151\143\153\145\162\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\163\143\162\157\154\154\145\144\167\151\156" + "\144\157\167\056\144\151\141\154\157\147\055\141\143\164\151\157" + "\156\055\142\157\170\040\076\040\165\156\144\145\162\163\150\157" + "\157\164\056\142\157\164\164\157\155\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\160\157\160\157\166\145\162\056" + "\145\155\157\152\151\055\160\151\143\153\145\162\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\142\157\164\164\157" + "\155\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\060\040\055\061\160\170\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\164\157\160\054\040\141\154\160\150\141\050" + "\100\160\157\160\157\166\145\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\067\065\051\054\040\164\162\141\156" + "\163\160\141\162\145\156\164\040\064\160\170\051\073\040\175\012" + "\012\160\157\160\157\166\145\162\056\145\155\157\152\151\055\143" + "\157\155\160\154\145\164\151\157\156\040\076\040\143\157\156\164" + "\145\156\164\163\040\173\040\160\141\144\144\151\156\147\072\040" + "\066\160\170\073\040\160\141\144\144\151\156\147\055\142\157\164" + "\164\157\155\072\040\064\160\170\073\040\175\012\012\145\155\157" + "\152\151\055\143\157\155\160\154\145\164\151\157\156\055\162\157" + "\167\040\173\040\160\141\144\144\151\156\147\072\040\066\160\170" + "\073\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072" + "\040\062\160\170\073\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\066\160\170\073\040\175\012\012\145\155\157" + "\152\151\055\143\157\155\160\154\145\164\151\157\156\055\162\157" + "\167\072\144\151\162\050\154\164\162\051\040\173\040\160\141\144" + "\144\151\156\147\055\162\151\147\150\164\072\040\061\062\160\170" + "\073\040\175\012\012\145\155\157\152\151\055\143\157\155\160\154" + "\145\164\151\157\156\055\162\157\167\072\144\151\162\050\162\164" + "\154\051\040\173\040\160\141\144\144\151\156\147\055\154\145\146" + "\164\072\040\061\062\160\170\073\040\175\012\012\145\155\157\152" + "\151\055\143\157\155\160\154\145\164\151\157\156\055\162\157\167" + "\040\076\040\142\157\170\040\173\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\066\160\170\073\040\175\012" + "\012\145\155\157\152\151\055\143\157\155\160\154\145\164\151\157" + "\156\055\162\157\167\072\146\157\143\165\163\054\040\145\155\157" + "\152\151\055\143\157\155\160\154\145\164\151\157\156\055\162\157" + "\167\072\150\157\166\145\162\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\051\073\040\143\157\154\157\162\072\040\100\160\157\160" + "\157\166\145\162\137\146\147\137\143\157\154\157\162\073\040\175" + "\012\012\145\155\157\152\151\055\143\157\155\160\154\145\164\151" + "\157\156\055\162\157\167\072\141\143\164\151\166\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\061\066\051\073\040\175\012\012\145" + "\155\157\152\151\055\143\157\155\160\154\145\164\151\157\156\055" + "\162\157\167\072\146\157\143\165\163\054\040\145\155\157\152\151" + "\055\143\157\155\160\154\145\164\151\157\156\055\162\157\167\072" + "\150\157\166\145\162\054\040\145\155\157\152\151\055\143\157\155" + "\160\154\145\164\151\157\156\055\162\157\167\072\141\143\164\151" + "\166\145\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\060\040\060\040\060\040\061\160\170" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\073\040\175\012\012\163\160\151" + "\156\142\165\164\164\157\156\054\040\145\156\164\162\171\040\173" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\063\064\160" + "\170\073\040\160\141\144\144\151\156\147\055\154\145\146\164\072" + "\040\071\160\170\073\040\160\141\144\144\151\156\147\055\162\151" + "\147\150\164\072\040\071\160\170\073\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\066\160\170\073\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160" + "\170\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\051\073\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\154\151\160\072\040\160" + "\141\144\144\151\156\147\055\142\157\170\073\040\143\141\162\145" + "\164\055\143\157\154\157\162\072\040\143\165\162\162\145\156\164" + "\103\157\154\157\162\073\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\060\040\060\040\060\040\061" + "\160\170\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\175\012\012\163" + "\160\151\156\142\165\164\164\157\156\054\040\145\156\164\162\171" + "\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163\157" + "\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\064\160\170\073\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154" + "\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073" + "\040\175\012\012\163\160\151\156\142\165\164\164\157\156\072\146" + "\157\143\165\163\055\167\151\164\150\151\156\054\040\145\156\164" + "\162\171\072\146\157\143\165\163\055\167\151\164\150\151\156\040" + "\173\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\100\141\143\143\145\156\164\137\143" + "\157\154\157\162\054\060\056\070\051\073\040\157\165\164\154\151" + "\156\145\055\167\151\144\164\150\072\040\062\160\170\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\055" + "\062\160\170\073\040\175\012\012\056\157\163\144\040\163\160\151" + "\156\142\165\164\164\157\156\072\146\157\143\165\163\055\167\151" + "\164\150\151\156\054\040\056\157\163\144\040\145\156\164\162\171" + "\072\146\157\143\165\163\055\167\151\164\150\151\156\040\173\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040\162" + "\147\142\141\050\062\065\065\054\040\062\065\065\054\040\062\065" + "\065\054\040\060\056\065\051\073\040\175\012\012\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\164\145\170\164\040\076\040" + "\142\154\157\143\153\055\143\165\162\163\157\162\054\040\145\156" + "\164\162\171\040\076\040\164\145\170\164\040\076\040\142\154\157" + "\143\153\055\143\165\162\163\157\162\040\173\040\143\157\154\157" + "\162\072\040\100\166\151\145\167\137\142\147\137\143\157\154\157" + "\162\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\100\166\151\145\167\137\146\147\137\143\157" + "\154\157\162\073\040\175\012\012\163\160\151\156\142\165\164\164" + "\157\156\056\146\154\141\164\054\040\145\156\164\162\171\056\146" + "\154\141\164\072\146\157\143\165\163\055\167\151\164\150\151\156" + "\054\040\145\156\164\162\171\056\146\154\141\164\072\144\151\163" + "\141\142\154\145\144\054\040\145\156\164\162\171\056\146\154\141" + "\164\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\060\073\040\160\141\144\144\151\156\147\072\040\062\160\170\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\156\157\156\145" + "\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072" + "\040\060\073\040\175\012\012\163\160\151\156\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\054\040\145\156\164\162" + "\171\072\144\151\163\141\142\154\145\144\040\173\040\146\151\154" + "\164\145\162\072\040\157\160\141\143\151\164\171\050\060\056\064" + "\051\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156" + "\056\145\162\162\157\162\054\040\145\156\164\162\171\056\145\162" + "\162\157\162\040\173\040\157\165\164\154\151\156\145\072\040\060" + "\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\064\160\170\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\073\040\175\012\012\163\160\151\156\142\165\164\164\157" + "\156\056\145\162\162\157\162\072\146\157\143\165\163\055\167\151" + "\164\150\151\156\054\040\145\156\164\162\171\056\145\162\162\157" + "\162\072\146\157\143\165\163\055\167\151\164\150\151\156\040\173" + "\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\070\051\073\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\055\062\160" + "\170\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156" + "\056\145\162\162\157\162\040\076\040\164\145\170\164\040\076\040" + "\163\145\154\145\143\164\151\157\156\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\054\040\145\156\164\162\171\056\145\162" + "\162\157\162\040\076\040\164\145\170\164\040\076\040\163\145\154" + "\145\143\164\151\157\156\072\146\157\143\165\163\055\167\151\164" + "\150\151\156\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\145" + "\162\162\157\162\137\143\157\154\157\162\054\060\056\062\051\073" + "\040\175\012\012\163\160\151\156\142\165\164\164\157\156\056\145" + "\162\162\157\162\040\076\040\164\145\170\164\040\076\040\143\165" + "\162\163\157\162\055\150\141\156\144\154\145\040\076\040\143\157" + "\156\164\145\156\164\163\054\040\145\156\164\162\171\056\145\162" + "\162\157\162\040\076\040\164\145\170\164\040\076\040\143\165\162" + "\163\157\162\055\150\141\156\144\154\145\040\076\040\143\157\156" + "\164\145\156\164\163\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\143\165\162\162\145\156" + "\164\103\157\154\157\162\073\040\175\012\012\163\160\151\156\142" + "\165\164\164\157\156\056\145\162\162\157\162\040\076\040\160\162" + "\157\147\162\145\163\163\040\076\040\164\162\157\165\147\150\040" + "\076\040\160\162\157\147\162\145\163\163\054\040\145\156\164\162" + "\171\056\145\162\162\157\162\040\076\040\160\162\157\147\162\145" + "\163\163\040\076\040\164\162\157\165\147\150\040\076\040\160\162" + "\157\147\162\145\163\163\040\173\040\142\157\162\144\145\162\055" + "\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103\157" + "\154\157\162\073\040\175\012\012\163\160\151\156\142\165\164\164" + "\157\156\056\167\141\162\156\151\156\147\054\040\145\156\164\162" + "\171\056\167\141\162\156\151\156\147\040\173\040\157\165\164\154" + "\151\156\145\072\040\060\040\163\157\154\151\144\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\072\040\064\160\170\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\163\160\151" + "\156\142\165\164\164\157\156\056\167\141\162\156\151\156\147\072" + "\146\157\143\165\163\055\167\151\164\150\151\156\054\040\145\156" + "\164\162\171\056\167\141\162\156\151\156\147\072\146\157\143\165" + "\163\055\167\151\164\150\151\156\040\173\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\070" + "\051\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150" + "\072\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\072\040\055\062\160\170\073\040\175\012\012" + "\163\160\151\156\142\165\164\164\157\156\056\167\141\162\156\151" + "\156\147\040\076\040\164\145\170\164\040\076\040\163\145\154\145" + "\143\164\151\157\156\072\146\157\143\165\163\055\167\151\164\150" + "\151\156\054\040\145\156\164\162\171\056\167\141\162\156\151\156" + "\147\040\076\040\164\145\170\164\040\076\040\163\145\154\145\143" + "\164\151\157\156\072\146\157\143\165\163\055\167\151\164\150\151" + "\156\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\100\167\141\162" + "\156\151\156\147\137\143\157\154\157\162\054\060\056\062\051\073" + "\040\175\012\012\163\160\151\156\142\165\164\164\157\156\056\167" + "\141\162\156\151\156\147\040\076\040\164\145\170\164\040\076\040" + "\143\165\162\163\157\162\055\150\141\156\144\154\145\040\076\040" + "\143\157\156\164\145\156\164\163\054\040\145\156\164\162\171\056" + "\167\141\162\156\151\156\147\040\076\040\164\145\170\164\040\076" + "\040\143\165\162\163\157\162\055\150\141\156\144\154\145\040\076" + "\040\143\157\156\164\145\156\164\163\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\143\165" + "\162\162\145\156\164\103\157\154\157\162\073\040\175\012\012\163" + "\160\151\156\142\165\164\164\157\156\056\167\141\162\156\151\156" + "\147\040\076\040\160\162\157\147\162\145\163\163\040\076\040\164" + "\162\157\165\147\150\040\076\040\160\162\157\147\162\145\163\163" + "\054\040\145\156\164\162\171\056\167\141\162\156\151\156\147\040" + "\076\040\160\162\157\147\162\145\163\163\040\076\040\164\162\157" + "\165\147\150\040\076\040\160\162\157\147\162\145\163\163\040\173" + "\040\142\157\162\144\145\162\055\143\157\154\157\162\072\040\143" + "\165\162\162\145\156\164\103\157\154\157\162\073\040\175\012\012" + "\163\160\151\156\142\165\164\164\157\156\056\163\165\143\143\145" + "\163\163\054\040\145\156\164\162\171\056\163\165\143\143\145\163" + "\163\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163" + "\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\064\160\170\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156\056" + "\163\165\143\143\145\163\163\072\146\157\143\165\163\055\167\151" + "\164\150\151\156\054\040\145\156\164\162\171\056\163\165\143\143" + "\145\163\163\072\146\157\143\165\163\055\167\151\164\150\151\156" + "\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\070\051\073\040\157\165\164\154\151" + "\156\145\055\167\151\144\164\150\072\040\062\160\170\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\055" + "\062\160\170\073\040\175\012\012\163\160\151\156\142\165\164\164" + "\157\156\056\163\165\143\143\145\163\163\040\076\040\164\145\170" + "\164\040\076\040\163\145\154\145\143\164\151\157\156\072\146\157" + "\143\165\163\055\167\151\164\150\151\156\054\040\145\156\164\162" + "\171\056\163\165\143\143\145\163\163\040\076\040\164\145\170\164" + "\040\076\040\163\145\154\145\143\164\151\157\156\072\146\157\143" + "\165\163\055\167\151\164\150\151\156\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\100\163\165\143\143\145\163\163\137\143\157\154" + "\157\162\054\060\056\062\051\073\040\175\012\012\163\160\151\156" + "\142\165\164\164\157\156\056\163\165\143\143\145\163\163\040\076" + "\040\164\145\170\164\040\076\040\143\165\162\163\157\162\055\150" + "\141\156\144\154\145\040\076\040\143\157\156\164\145\156\164\163" + "\054\040\145\156\164\162\171\056\163\165\143\143\145\163\163\040" + "\076\040\164\145\170\164\040\076\040\143\165\162\163\157\162\055" + "\150\141\156\144\154\145\040\076\040\143\157\156\164\145\156\164" + "\163\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\143\165\162\162\145\156\164\103\157\154" + "\157\162\073\040\175\012\012\163\160\151\156\142\165\164\164\157" + "\156\056\163\165\143\143\145\163\163\040\076\040\160\162\157\147" + "\162\145\163\163\040\076\040\164\162\157\165\147\150\040\076\040" + "\160\162\157\147\162\145\163\163\054\040\145\156\164\162\171\056" + "\163\165\143\143\145\163\163\040\076\040\160\162\157\147\162\145" + "\163\163\040\076\040\164\162\157\165\147\150\040\076\040\160\162" + "\157\147\162\145\163\163\040\173\040\142\157\162\144\145\162\055" + "\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103\157" + "\154\157\162\073\040\175\012\012\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\151\155\141\147\145\054\040\145\156\164\162" + "\171\040\076\040\151\155\141\147\145\040\173\040\157\160\141\143" + "\151\164\171\072\040\060\056\070\065\073\040\175\012\012\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\151\155\141\147\145" + "\072\150\157\166\145\162\054\040\145\156\164\162\171\040\076\040" + "\151\155\141\147\145\072\150\157\166\145\162\040\173\040\157\160" + "\141\143\151\164\171\072\040\061\073\040\175\012\012\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\151\155\141\147\145\072" + "\141\143\164\151\166\145\054\040\145\156\164\162\171\040\076\040" + "\151\155\141\147\145\072\141\143\164\151\166\145\040\173\040\157" + "\160\141\143\151\164\171\072\040\060\056\071\073\040\175\012\012" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\151\155\141" + "\147\145\056\154\145\146\164\054\040\145\156\164\162\171\040\076" + "\040\151\155\141\147\145\056\154\145\146\164\040\173\040\155\141" + "\162\147\151\156\055\162\151\147\150\164\072\040\066\160\170\073" + "\040\175\012\012\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\151\155\141\147\145\056\162\151\147\150\164\054\040\145\156" + "\164\162\171\040\076\040\151\155\141\147\145\056\162\151\147\150" + "\164\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072" + "\040\066\160\170\073\040\175\012\012\163\160\151\156\142\165\164" + "\164\157\156\056\160\141\163\163\167\157\162\144\040\151\155\141" + "\147\145\056\143\141\160\163\055\154\157\143\153\055\151\156\144" + "\151\143\141\164\157\162\054\040\145\156\164\162\171\056\160\141" + "\163\163\167\157\162\144\040\151\155\141\147\145\056\143\141\160" + "\163\055\154\157\143\153\055\151\156\144\151\143\141\164\157\162" + "\040\173\040\157\160\141\143\151\164\171\072\040\060\056\070\073" + "\040\175\012\012\163\160\151\156\142\165\164\164\157\156\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\054\040\145\156\164" + "\162\171\072\144\162\157\160\050\141\143\164\151\166\145\051\072" + "\146\157\143\165\163\055\167\151\164\150\151\156\054\040\145\156" + "\164\162\171\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\040\173\040\142\157\162\144\145\162\055\143\157\154\157\162\072" + "\040\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\073\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\060\040\060\040\060\040\061\160\170\040\100" + "\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073" + "\040\175\012\012\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\160\162\157\147\162\145\163\163\054\040\145\156\164\162\171" + "\040\076\040\160\162\157\147\162\145\163\163\040\173\040\155\141" + "\162\147\151\156\055\142\157\164\164\157\155\072\040\063\160\170" + "\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\160\162\157\147\162\145\163\163\040\076\040\164\162\157" + "\165\147\150\054\040\145\156\164\162\171\040\076\040\160\162\157" + "\147\162\145\163\163\040\076\040\164\162\157\165\147\150\040\173" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\062\160\170" + "\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\160\162\157\147\162\145\163\163\040\076\040\164\162\157" + "\165\147\150\040\076\040\160\162\157\147\162\145\163\163\054\040" + "\145\156\164\162\171\040\076\040\160\162\157\147\162\145\163\163" + "\040\076\040\164\162\157\165\147\150\040\076\040\160\162\157\147" + "\162\145\163\163\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141" + "\162\145\156\164\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\156\157\156\145\073\040\142\157" + "\162\144\145\162\055\162\141\144\151\165\163\072\040\060\073\040" + "\142\157\162\144\145\162\055\167\151\144\164\150\072\040\060\040" + "\060\040\062\160\170\073\040\142\157\162\144\145\162\055\143\157" + "\154\157\162\072\040\100\141\143\143\145\156\164\137\142\147\137" + "\143\157\154\157\162\073\040\142\157\162\144\145\162\055\163\164" + "\171\154\145\072\040\163\157\154\151\144\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\156\157\156\145\073\040\175\012" + "\012\056\157\163\144\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\160\162\157\147\162\145\163\163\040\076\040\164\162" + "\157\165\147\150\040\076\040\160\162\157\147\162\145\163\163\054" + "\040\056\157\163\144\040\145\156\164\162\171\040\076\040\160\162" + "\157\147\162\145\163\163\040\076\040\164\162\157\165\147\150\040" + "\076\040\160\162\157\147\162\145\163\163\040\173\040\142\157\162" + "\144\145\162\055\143\157\154\157\162\072\040\162\147\142\141\050" + "\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040\060" + "\056\067\065\051\073\040\175\012\012\145\170\160\141\156\144\145" + "\162\040\173\040\155\151\156\055\167\151\144\164\150\072\040\061" + "\066\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\061\066\160\170\073\040\055\147\164\153\055\151\143\157\156" + "\055\163\157\165\162\143\145\072\040\055\147\164\153\055\151\143" + "\157\156\164\150\145\155\145\050\042\160\141\156\055\145\156\144" + "\055\163\171\155\142\157\154\151\143\042\051\073\040\175\012\012" + "\145\170\160\141\156\144\145\162\072\144\151\162\050\162\164\154" + "\051\040\173\040\055\147\164\153\055\151\143\157\156\055\163\157" + "\165\162\143\145\072\040\055\147\164\153\055\151\143\157\156\164" + "\150\145\155\145\050\042\160\141\156\055\145\156\144\055\163\171" + "\155\142\157\154\151\143\055\162\164\154\042\051\073\040\175\012" + "\012\145\170\160\141\156\144\145\162\072\144\151\163\141\142\154" + "\145\144\040\173\040\146\151\154\164\145\162\072\040\157\160\141" + "\143\151\164\171\050\060\056\064\051\073\040\175\012\012\145\170" + "\160\141\156\144\145\162\072\143\150\145\143\153\145\144\040\173" + "\040\055\147\164\153\055\151\143\157\156\055\163\157\165\162\143" + "\145\072\040\055\147\164\153\055\151\143\157\156\164\150\145\155" + "\145\050\042\160\141\156\055\144\157\167\156\055\163\171\155\142" + "\157\154\151\143\042\051\073\040\175\012\012\145\170\160\141\156" + "\144\145\162\055\167\151\144\147\145\164\040\076\040\142\157\170" + "\040\076\040\164\151\164\154\145\040\173\040\157\165\164\154\151" + "\156\145\072\040\060\040\163\157\154\151\144\040\164\162\141\156" + "\163\160\141\162\145\156\164\073\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\072\040\064\160\170\073\040\164\162" + "\141\156\163\151\164\151\157\156\072\040\157\165\164\154\151\156" + "\145\055\143\157\154\157\162\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\157\165\164\154\151\156\145\055\167\151\144\164" + "\150\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165" + "\164\154\151\156\145\055\157\146\146\163\145\164\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\073\040\175\012\012\145\170\160\141" + "\156\144\145\162\055\167\151\144\147\145\164\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040" + "\076\040\142\157\170\040\076\040\164\151\164\154\145\040\173\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\054\060\056\070\051\073\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\055\062\160" + "\170\073\040\175\012\012\145\170\160\141\156\144\145\162\055\167" + "\151\144\147\145\164\040\076\040\142\157\170\040\076\040\164\151" + "\164\154\145\040\173\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\066\160\170\073\040\175\012\012\145\170\160" + "\141\156\144\145\162\055\167\151\144\147\145\164\040\076\040\142" + "\157\170\040\076\040\164\151\164\154\145\040\076\040\145\170\160" + "\141\156\144\145\162\040\173\040\157\160\141\143\151\164\171\072" + "\040\056\067\073\040\175\012\012\145\170\160\141\156\144\145\162" + "\055\167\151\144\147\145\164\040\076\040\142\157\170\040\076\040" + "\164\151\164\154\145\072\150\157\166\145\162\040\076\040\145\170" + "\160\141\156\144\145\162\054\040\145\170\160\141\156\144\145\162" + "\055\167\151\144\147\145\164\040\076\040\142\157\170\040\076\040" + "\164\151\164\154\145\072\141\143\164\151\166\145\040\076\040\145" + "\170\160\141\156\144\145\162\040\173\040\157\160\141\143\151\164" + "\171\072\040\061\073\040\175\012\012\160\154\141\143\145\163\163" + "\151\144\145\142\141\162\040\056\156\141\166\151\147\141\164\151" + "\157\156\055\163\151\144\145\142\141\162\040\076\040\162\157\167" + "\040\173\040\160\141\144\144\151\156\147\072\040\060\073\040\175" + "\012\012\160\154\141\143\145\163\163\151\144\145\142\141\162\040" + "\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145" + "\142\141\162\040\076\040\162\157\167\040\076\040\162\145\166\145" + "\141\154\145\162\040\173\040\160\141\144\144\151\156\147\072\040" + "\060\040\061\064\160\170\073\040\175\012\012\160\154\141\143\145" + "\163\163\151\144\145\142\141\162\040\056\156\141\166\151\147\141" + "\164\151\157\156\055\163\151\144\145\142\141\162\040\076\040\162" + "\157\167\040\151\155\141\147\145\056\163\151\144\145\142\141\162" + "\055\151\143\157\156\072\144\151\162\050\154\164\162\051\040\173" + "\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040" + "\070\160\170\073\040\175\012\012\160\154\141\143\145\163\163\151" + "\144\145\142\141\162\040\056\156\141\166\151\147\141\164\151\157" + "\156\055\163\151\144\145\142\141\162\040\076\040\162\157\167\040" + "\151\155\141\147\145\056\163\151\144\145\142\141\162\055\151\143" + "\157\156\072\144\151\162\050\162\164\154\051\040\173\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\070\160\170\073" + "\040\175\012\012\160\154\141\143\145\163\163\151\144\145\142\141" + "\162\040\056\156\141\166\151\147\141\164\151\157\156\055\163\151" + "\144\145\142\141\162\040\076\040\162\157\167\040\154\141\142\145" + "\154\056\163\151\144\145\142\141\162\055\154\141\142\145\154\072" + "\144\151\162\050\154\164\162\051\040\173\040\160\141\144\144\151" + "\156\147\055\162\151\147\150\164\072\040\062\160\170\073\040\175" + "\012\012\160\154\141\143\145\163\163\151\144\145\142\141\162\040" + "\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145" + "\142\141\162\040\076\040\162\157\167\040\154\141\142\145\154\056" + "\163\151\144\145\142\141\162\055\154\141\142\145\154\072\144\151" + "\162\050\162\164\154\051\040\173\040\160\141\144\144\151\156\147" + "\055\154\145\146\164\072\040\062\160\170\073\040\175\012\012\142" + "\165\164\164\157\156\056\163\151\144\145\142\141\162\055\142\165" + "\164\164\157\156\040\173\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\062\066\160\170\073\040\155\151\156\055\167\151\144" + "\164\150\072\040\062\066\160\170\073\040\155\141\162\147\151\156" + "\055\164\157\160\072\040\063\160\170\073\040\155\141\162\147\151" + "\156\055\142\157\164\164\157\155\072\040\063\160\170\073\040\160" + "\141\144\144\151\156\147\072\040\060\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\061\060\060\045\073\040" + "\175\012\012\160\154\141\143\145\163\163\151\144\145\142\141\162" + "\040\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144" + "\145\142\141\162\040\076\040\162\157\167\072\163\145\154\145\143" + "\164\145\144\072\141\143\164\151\166\145\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\156\157\156\145\073\040\175" + "\012\012\160\154\141\143\145\163\163\151\144\145\142\141\162\040" + "\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145" + "\142\141\162\040\076\040\162\157\167\056\163\151\144\145\142\141" + "\162\055\160\154\141\143\145\150\157\154\144\145\162\055\162\157" + "\167\040\173\040\160\141\144\144\151\156\147\072\040\060\040\070" + "\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\062\160\170\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\151\155\141\147\145\072\040\151\155\141\147\145\050\100\141\143" + "\143\145\156\164\137\142\147\137\143\157\154\157\162\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\154\151\160\072" + "\040\143\157\156\164\145\156\164\055\142\157\170\073\040\175\012" + "\012\160\154\141\143\145\163\163\151\144\145\142\141\162\040\056" + "\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145\142" + "\141\162\040\076\040\162\157\167\056\163\151\144\145\142\141\162" + "\055\156\145\167\055\142\157\157\153\155\141\162\153\055\162\157" + "\167\040\173\040\143\157\154\157\162\072\040\100\141\143\143\145" + "\156\164\137\143\157\154\157\162\073\040\175\012\012\160\154\141" + "\143\145\163\163\151\144\145\142\141\162\040\056\156\141\166\151" + "\147\141\164\151\157\156\055\163\151\144\145\142\141\162\040\076" + "\040\162\157\167\072\144\162\157\160\050\141\143\164\151\166\145" + "\051\072\156\157\164\050\072\144\151\163\141\142\154\145\144\051" + "\040\173\040\143\157\154\157\162\072\040\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\060\040\060\040\061\160\170\040\100\141\143\143\145\156\164\137" + "\142\147\137\143\157\154\157\162\073\040\175\012\012\162\157\167" + "\040\151\155\141\147\145\056\163\151\144\145\142\141\162\055\151" + "\143\157\156\040\173\040\157\160\141\143\151\164\171\072\040\060" + "\056\067\073\040\175\012\012\162\157\167\040\056\163\151\144\145" + "\142\141\162\055\142\165\164\164\157\156\040\173\040\157\160\141" + "\143\151\164\171\072\040\060\056\067\073\040\175\012\012\162\157" + "\167\040\056\163\151\144\145\142\141\162\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\054\040\162\157\167\040\056\163\151" + "\144\145\142\141\162\055\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\162\157\167\040\056\163\151\144\145\142\141" + "\162\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\040\173\040\157" + "\160\141\143\151\164\171\072\040\061\073\040\175\012\012\160\154" + "\141\143\145\163\166\151\145\167\040\056\163\145\162\166\145\162" + "\055\154\151\163\164\055\142\165\164\164\157\156\040\076\040\151" + "\155\141\147\145\040\173\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\055\147\164\153\055\151\143\157\156\055\164\162\141" + "\156\163\146\157\162\155\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\073\040\055\147\164\153\055\151\143\157\156\055\164\162\141" + "\156\163\146\157\162\155\072\040\162\157\164\141\164\145\050\060" + "\164\165\162\156\051\073\040\175\012\012\160\154\141\143\145\163" + "\166\151\145\167\040\056\163\145\162\166\145\162\055\154\151\163" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\040\076\040\151\155\141\147\145\040\173\040\055\147\164\153\055" + "\151\143\157\156\055\164\162\141\156\163\146\157\162\155\072\040" + "\162\157\164\141\164\145\050\055\060\056\065\164\165\162\156\051" + "\073\040\175\012\012\160\154\141\143\145\163\166\151\145\167\040" + "\076\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\076\040\142" + "\157\170\040\173\040\142\157\162\144\145\162\055\163\160\141\143" + "\151\156\147\072\040\066\160\170\073\040\175\012\012\146\151\154" + "\145\143\150\157\157\163\145\162\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\060\040\061\160\170\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\175\012\012\146\151\154\145\143\150\157" + "\157\163\145\162\040\160\141\164\150\142\141\162\040\142\165\164" + "\164\157\156\072\156\157\164\050\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\051\040\173\040\160\141\144\144\151\156\147" + "\055\154\145\146\164\072\040\071\160\170\073\040\160\141\144\144" + "\151\156\147\055\162\151\147\150\164\072\040\071\160\170\073\040" + "\175\012\012\146\151\154\145\143\150\157\157\163\145\162\040\160" + "\141\164\150\142\141\162\040\142\165\164\164\157\156\040\076\040" + "\142\157\170\040\173\040\142\157\162\144\145\162\055\163\160\141" + "\143\151\156\147\072\040\064\160\170\073\040\175\012\012\146\151" + "\154\145\143\150\157\157\163\145\162\040\160\141\164\150\142\141" + "\162\040\142\165\164\164\157\156\040\076\040\142\157\170\040\076" + "\040\154\141\142\145\154\040\173\040\160\141\144\144\151\156\147" + "\055\154\145\146\164\072\040\062\160\170\073\040\160\141\144\144" + "\151\156\147\055\162\151\147\150\164\072\040\062\160\170\073\040" + "\175\012\012\146\151\154\145\143\150\157\157\163\145\162\040\143" + "\157\154\165\155\156\166\151\145\167\040\076\040\154\151\163\164" + "\166\151\145\167\040\076\040\162\157\167\040\076\040\143\145\154" + "\154\054\040\146\151\154\145\143\150\157\157\163\145\162\040\164" + "\162\145\145\166\151\145\167\056\166\151\145\167\040\076\040\154" + "\151\163\164\166\151\145\167\040\076\040\162\157\167\040\076\040" + "\143\145\154\154\054\040\146\151\154\145\143\150\157\157\163\145" + "\162\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164" + "\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\040\076\040\154\151\163\164" + "\166\151\145\167\040\076\040\162\157\167\040\076\040\143\145\154" + "\154\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\164\162\145\145" + "\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\142\157\170\040\076\040\154\151\163\164\166\151\145" + "\167\040\076\040\162\157\167\040\076\040\143\145\154\154\040\173" + "\040\160\141\144\144\151\156\147\072\040\060\073\040\175\012\012" + "\146\151\154\145\143\150\157\157\163\145\162\040\143\157\154\165" + "\155\156\166\151\145\167\040\076\040\154\151\163\164\166\151\145" + "\167\040\076\040\162\157\167\040\076\040\143\145\154\154\040\076" + "\040\146\151\154\145\154\151\163\164\143\145\154\154\054\040\146" + "\151\154\145\143\150\157\157\163\145\162\040\164\162\145\145\166" + "\151\145\167\056\166\151\145\167\040\076\040\154\151\163\164\166" + "\151\145\167\040\076\040\162\157\167\040\076\040\143\145\154\154" + "\040\076\040\146\151\154\145\154\151\163\164\143\145\154\154\054" + "\040\146\151\154\145\143\150\157\157\163\145\162\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151" + "\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\142\157\170\040\076\040\154\151\163\164\166\151\145\167\040" + "\076\040\162\157\167\040\076\040\143\145\154\154\040\076\040\146" + "\151\154\145\154\151\163\164\143\145\154\154\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\164\162\145\145\166\151\145\167\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170" + "\040\076\040\154\151\163\164\166\151\145\167\040\076\040\162\157" + "\167\040\076\040\143\145\154\154\040\076\040\146\151\154\145\154" + "\151\163\164\143\145\154\154\040\173\040\160\141\144\144\151\156" + "\147\072\040\070\160\170\040\066\160\170\073\040\175\012\012\146" + "\151\154\145\143\150\157\157\163\145\162\040\147\162\151\144\166" + "\151\145\167\040\173\040\160\141\144\144\151\156\147\072\040\061" + "\065\160\170\073\040\175\012\012\146\151\154\145\143\150\157\157" + "\163\145\162\040\147\162\151\144\166\151\145\167\040\176\040\165" + "\156\144\145\162\163\150\157\157\164\056\164\157\160\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\060\040\061\160\170\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156" + "\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040" + "\142\157\164\164\157\155\054\040\141\154\160\150\141\050\100\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\146\151\154\145\143\150\157\157\163" + "\145\162\040\147\162\151\144\166\151\145\167\040\076\040\143\150" + "\151\154\144\040\173\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\061\062\160\170\073\040\160\141\144\144\151" + "\156\147\072\040\060\073\040\155\141\162\147\151\156\072\040\063" + "\160\170\073\040\175\012\012\146\151\154\145\143\150\157\157\163" + "\145\162\040\147\162\151\144\166\151\145\167\040\076\040\143\150" + "\151\154\144\040\076\040\146\151\154\145\154\151\163\164\143\145" + "\154\154\040\173\040\160\141\144\144\151\156\147\072\040\066\160" + "\170\040\061\062\160\170\073\040\175\012\012\146\151\154\145\143" + "\150\157\157\163\145\162\040\147\162\151\144\166\151\145\167\040" + "\076\040\143\150\151\154\144\040\146\151\154\145\164\150\165\155" + "\142\156\141\151\154\040\151\155\141\147\145\040\173\040\146\151" + "\154\164\145\162\072\040\144\162\157\160\055\163\150\141\144\157" + "\167\050\060\160\170\040\061\160\170\040\061\160\170\040\162\147" + "\142\141\050\060\054\040\060\054\040\060\054\040\060\056\063\051" + "\051\073\040\175\012\012\146\151\154\145\143\150\157\157\163\145" + "\162\040\147\162\151\144\166\151\145\167\040\076\040\143\150\151" + "\154\144\040\142\157\170\040\173\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\066\160\170\073\040\175\012" + "\012\146\151\154\145\143\150\157\157\163\145\162\040\076\040\142" + "\157\170\040\076\040\141\143\164\151\157\156\142\141\162\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\060\040\055" + "\061\160\170\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\065\051\054\040\060\040\055" + "\062\160\170\040\064\160\170\040\141\154\160\150\141\050\100\150" + "\145\141\144\145\162\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\065\051\073\040\175\012\012\146\151" + "\154\145\143\150\157\157\163\145\162\040\076\040\142\157\170\040" + "\076\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\156\157\156\145\073" + "\040\160\141\144\144\151\156\147\055\164\157\160\072\040\066\160" + "\170\073\040\175\012\012\146\151\154\145\143\150\157\157\163\145" + "\162\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\040\053\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\155\151\170\050\100\141\143\143\145\156\164\137\142\147" + "\137\143\157\154\157\162\054\100\166\151\145\167\137\142\147\137" + "\143\157\154\157\162\054\060\056\067\051\073\040\143\157\154\157" + "\162\072\040\100\167\151\156\144\157\167\137\146\147\137\143\157" + "\154\157\162\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\160\141\144\144\151\156\147\055\164" + "\157\160\072\040\066\160\170\073\040\146\157\156\164\055\167\145" + "\151\147\150\164\072\040\142\157\154\144\073\040\175\012\012\146" + "\151\154\145\143\150\157\157\163\145\162\040\163\143\162\157\154" + "\154\145\144\167\151\156\144\157\167\040\053\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\072\142\141\143\153\144\162\157\160\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\155\151\170\050\100\141\143\143\145\156\164\137" + "\142\147\137\143\157\154\157\162\054\100\166\151\145\167\137\142" + "\147\137\143\157\154\157\162\054\060\056\070\065\051\073\040\175" + "\012\012\146\151\154\145\143\150\157\157\163\145\162\040\160\154" + "\141\143\145\163\166\151\145\167\040\076\040\163\164\141\143\153" + "\040\076\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\040\076\040\165\156\144\145\162\163\150\157\157\164\056\142" + "\157\164\164\157\155\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\055\061\160\170" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\164\157\160\054\040\141\154" + "\160\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162" + "\145\156\164\040\064\160\170\051\073\040\175\012\012\146\151\154" + "\145\143\150\157\157\163\145\162\040\160\154\141\143\145\163\166" + "\151\145\167\040\076\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\100" + "\166\151\145\167\137\142\147\137\143\157\154\157\162\073\040\143" + "\157\154\157\162\072\040\100\166\151\145\167\137\146\147\137\143" + "\157\154\157\162\073\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\156\157\156\145\073\040\160\141\144\144\151\156\147\055" + "\164\157\160\072\040\066\160\170\073\040\175\012\012\146\151\154" + "\145\143\150\157\157\163\145\162\040\160\154\141\143\145\163\166" + "\151\145\167\040\076\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\072\142\141\143\153\144\162\157\160\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\100\166\151\145\167\137\142\147" + "\137\143\157\154\157\162\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\156\157\156\145\073\040\175\012\012\146\151\154" + "\145\143\150\157\157\163\145\162\040\160\154\141\143\145\163\163" + "\151\144\145\142\141\162\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\100\163\151\144\145" + "\142\141\162\137\142\147\137\143\157\154\157\162\073\040\143\157" + "\154\157\162\072\040\100\163\151\144\145\142\141\162\137\146\147" + "\137\143\157\154\157\162\073\040\175\012\012\146\151\154\145\143" + "\150\157\157\163\145\162\040\160\154\141\143\145\163\163\151\144" + "\145\142\141\162\072\142\141\143\153\144\162\157\160\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\100\163\151\144\145\142\141\162\137\142\141\143\153\144" + "\162\157\160\137\143\157\154\157\162\073\040\164\162\141\156\163" + "\151\164\151\157\156\072\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\040\062\060\060\155\163\040\145\141" + "\163\145\055\157\165\164\073\040\175\012\012\146\151\154\145\143" + "\150\157\157\163\145\162\040\160\141\156\145\144\056\150\157\162" + "\151\172\157\156\164\141\154\040\076\040\163\145\160\141\162\141" + "\164\157\162\072\144\151\162\050\154\164\162\051\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\061\160\170\040\060\040\100\163\151\144\145\142\141\162\137" + "\142\147\137\143\157\154\157\162\054\040\151\156\163\145\164\040" + "\061\160\170\040\060\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040\175" + "\012\012\146\151\154\145\143\150\157\157\163\145\162\040\160\141" + "\156\145\144\056\150\157\162\151\172\157\156\164\141\154\040\076" + "\040\163\145\160\141\162\141\164\157\162\072\144\151\162\050\154" + "\164\162\051\072\142\141\143\153\144\162\157\160\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\061\160\170\040\060\040\100\163\151\144\145\142\141\162\137" + "\142\141\143\153\144\162\157\160\137\143\157\154\157\162\054\040" + "\151\156\163\145\164\040\061\160\170\040\060\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\175\012\012\146\151\154\145\143\150\157\157" + "\163\145\162\040\160\141\156\145\144\056\150\157\162\151\172\157" + "\156\164\141\154\040\076\040\163\145\160\141\162\141\164\157\162" + "\072\144\151\162\050\162\164\154\051\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\055\061" + "\160\170\040\060\040\100\163\151\144\145\142\141\162\137\142\147" + "\137\143\157\154\157\162\054\040\151\156\163\145\164\040\055\061" + "\160\170\040\060\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\065\051\073\040\175\012" + "\012\146\151\154\145\143\150\157\157\163\145\162\040\160\141\156" + "\145\144\056\150\157\162\151\172\157\156\164\141\154\040\076\040" + "\163\145\160\141\162\141\164\157\162\072\144\151\162\050\162\164" + "\154\051\072\142\141\143\153\144\162\157\160\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\055\061\160\170\040\060\040\100\163\151\144\145\142\141\162\137" + "\142\141\143\153\144\162\157\160\137\143\157\154\157\162\054\040" + "\151\156\163\145\164\040\055\061\160\170\040\060\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\175\012\012\146\151\154\145\143\150\157" + "\157\163\145\162\040\160\141\156\145\144\056\150\157\162\151\172" + "\157\156\164\141\154\040\076\040\163\145\160\141\162\141\164\157" + "\162\072\142\141\143\153\144\162\157\160\040\173\040\164\162\141" + "\156\163\151\164\151\157\156\072\040\142\157\170\055\163\150\141" + "\144\157\167\040\062\060\060\155\163\040\145\141\163\145\055\157" + "\165\164\073\040\175\012\012\057\052\040\106\151\170\040\150\145" + "\141\144\145\162\040\142\141\162\040\150\145\151\147\150\164\040" + "\151\156\040\164\150\145\040\146\151\154\145\040\143\150\157\157" + "\163\145\162\040\052\057\012\167\151\156\144\157\167\056\146\151" + "\154\145\143\150\157\157\163\145\162\040\150\145\141\144\145\162" + "\142\141\162\040\142\157\170\056\163\164\141\162\164\040\053\040" + "\142\157\170\056\166\145\162\164\151\143\141\154\040\173\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\055\066\160\170\073" + "\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040" + "\055\066\160\170\073\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\061\062\160\170\073\040\175\012\012\150\145\141\144\145" + "\162\142\141\162\040\173\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\064\067\160\170\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\100\150\145\141\144" + "\145\162\142\141\162\137\142\147\137\143\157\154\157\162\073\040" + "\143\157\154\157\162\072\040\100\150\145\141\144\145\162\142\141" + "\162\137\146\147\137\143\157\154\157\162\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\055\061\160\170\040\141\154\160\150\141\050\100\150\145\141\144" + "\145\162\142\141\162\137\142\157\162\144\145\162\137\143\157\154" + "\157\162\054\060\056\065\051\054\040\151\156\163\145\164\040\061" + "\160\170\040\060\040\141\154\160\150\141\050\100\150\145\141\144" + "\145\162\142\141\162\137\142\157\162\144\145\162\137\143\157\154" + "\157\162\054\060\056\065\051\054\040\151\156\163\145\164\040\055" + "\061\160\170\040\060\040\141\154\160\150\141\050\100\150\145\141" + "\144\145\162\142\141\162\137\142\157\162\144\145\162\137\143\157" + "\154\157\162\054\060\056\065\051\073\040\155\141\162\147\151\156" + "\055\154\145\146\164\072\040\055\061\160\170\073\040\155\141\162" + "\147\151\156\055\162\151\147\150\164\072\040\055\061\160\170\073" + "\040\175\012\012\150\145\141\144\145\162\142\141\162\040\076\040" + "\167\151\156\144\157\167\150\141\156\144\154\145\040\076\040\142" + "\157\170\040\173\040\160\141\144\144\151\156\147\072\040\066\160" + "\170\040\067\160\170\040\067\160\170\040\067\160\170\073\040\175" + "\012\012\150\145\141\144\145\162\142\141\162\040\076\040\167\151" + "\156\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170" + "\040\076\040\142\157\170\056\163\164\141\162\164\054\040\150\145" + "\141\144\145\162\142\141\162\040\076\040\167\151\156\144\157\167" + "\150\141\156\144\154\145\040\076\040\142\157\170\040\076\040\142" + "\157\170\056\145\156\144\040\173\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\066\160\170\073\040\175\012" + "\012\150\145\141\144\145\162\142\141\162\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170\040" + "\076\040\142\157\170\056\163\164\141\162\164\072\144\151\162\050" + "\154\164\162\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076" + "\040\142\157\170\040\076\040\142\157\170\056\145\156\144\072\144" + "\151\162\050\162\164\154\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144\154" + "\145\040\076\040\142\157\170\040\076\040\167\151\144\147\145\164" + "\040\076\040\142\157\170\056\163\164\141\162\164\072\144\151\162" + "\050\154\164\162\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040" + "\076\040\142\157\170\040\076\040\167\151\144\147\145\164\040\076" + "\040\142\157\170\056\145\156\144\072\144\151\162\050\162\164\154" + "\051\040\173\040\155\141\162\147\151\156\055\162\151\147\150\164" + "\072\040\066\160\170\073\040\175\012\012\150\145\141\144\145\162" + "\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\040\076\040\142\157\170\056\163" + "\164\141\162\164\072\144\151\162\050\162\164\154\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\076\040\167\151\156\144\157" + "\167\150\141\156\144\154\145\040\076\040\142\157\170\040\076\040" + "\142\157\170\056\145\156\144\072\144\151\162\050\154\164\162\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\076\040\167\151" + "\156\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170" + "\040\076\040\167\151\144\147\145\164\040\076\040\142\157\170\056" + "\163\164\141\162\164\072\144\151\162\050\162\164\154\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\040\076" + "\040\167\151\144\147\145\164\040\076\040\142\157\170\056\145\156" + "\144\072\144\151\162\050\154\164\162\051\040\173\040\155\141\162" + "\147\151\156\055\154\145\146\164\072\040\066\160\170\073\040\175" + "\012\012\150\145\141\144\145\162\142\141\162\072\142\141\143\153" + "\144\162\157\160\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\150\145\141\144\145\162" + "\142\141\162\137\142\141\143\153\144\162\157\160\137\143\157\154" + "\157\162\073\040\164\162\141\156\163\151\164\151\157\156\072\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\040\062\060\060\155\163\040\145\141\163\145\055\157\165\164\073" + "\040\175\012\012\150\145\141\144\145\162\142\141\162\072\142\141" + "\143\153\144\162\157\160\040\076\040\167\151\156\144\157\167\150" + "\141\156\144\154\145\040\173\040\146\151\154\164\145\162\072\040" + "\157\160\141\143\151\164\171\050\060\056\065\051\073\040\164\162" + "\141\156\163\151\164\151\157\156\072\040\146\151\154\164\145\162" + "\040\062\060\060\155\163\040\145\141\163\145\055\157\165\164\073" + "\040\175\012\012\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040\063" + "\067\160\170\073\040\175\012\012\150\145\141\144\145\162\142\141" + "\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141" + "\164\151\157\156\040\076\040\167\151\156\144\157\167\150\141\156" + "\144\154\145\040\076\040\142\157\170\040\173\040\160\141\144\144" + "\151\156\147\072\040\063\160\170\040\064\160\170\040\064\160\170" + "\040\064\160\170\073\040\175\012\012\150\145\141\144\145\162\142" + "\141\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162" + "\141\164\151\157\156\040\167\151\156\144\157\167\143\157\156\164" + "\162\157\154\163\040\076\040\142\165\164\164\157\156\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\062\062\160\170" + "\073\040\155\151\156\055\167\151\144\164\150\072\040\062\062\160" + "\170\073\040\160\141\144\144\151\156\147\072\040\064\160\170\073" + "\040\175\012\012\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\040\167\151\156\144\157\167\143\157\156\164\162\157\154\163\040" + "\076\040\056\151\143\157\156\040\173\040\155\141\162\147\151\156" + "\072\040\067\160\170\073\040\175\012\012\167\151\156\144\157\167" + "\040\076\040\056\164\151\164\154\145\142\141\162\072\156\157\164" + "\050\056\146\154\141\164\051\040\173\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\054\040\060\040\062\160\170\040\064\160\170\040\141" + "\154\160\150\141\050\100\150\145\141\144\145\162\142\141\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\065\051" + "\073\040\175\012\012\167\151\156\144\157\167\040\076\040\056\164" + "\151\164\154\145\142\141\162\040\150\145\141\144\145\162\142\141" + "\162\072\156\157\164\050\056\146\154\141\164\051\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\061\160\170\040\060\040\141\154\160\150\141\050\100\150\145" + "\141\144\145\162\142\141\162\137\142\157\162\144\145\162\137\143" + "\157\154\157\162\054\060\056\065\051\054\040\151\156\163\145\164" + "\040\055\061\160\170\040\060\040\141\154\160\150\141\050\100\150" + "\145\141\144\145\162\142\141\162\137\142\157\162\144\145\162\137" + "\143\157\154\157\162\054\060\056\065\051\073\040\175\012\012\167" + "\151\156\144\157\167\040\076\040\150\145\141\144\145\162\142\141" + "\162\056\164\151\164\154\145\142\141\162\054\040\167\151\156\144" + "\157\167\040\076\040\056\164\151\164\154\145\142\141\162\040\150" + "\145\141\144\145\162\142\141\162\040\173\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\064\066\160\170\073\040\175\012\012" + "\167\151\156\144\157\167\040\076\040\150\145\141\144\145\162\142" + "\141\162\056\164\151\164\154\145\142\141\162\040\076\040\167\151" + "\156\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170" + "\054\040\167\151\156\144\157\167\040\076\040\056\164\151\164\154" + "\145\142\141\162\040\150\145\141\144\145\162\142\141\162\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076\040" + "\142\157\170\040\173\040\160\141\144\144\151\156\147\055\142\157" + "\164\164\157\155\072\040\066\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\040\076\040\150\145\141\144\145\162\142\141\162" + "\056\164\151\164\154\145\142\141\162\056\144\145\146\141\165\154" + "\164\055\144\145\143\157\162\141\164\151\157\156\054\040\167\151" + "\156\144\157\167\040\076\040\056\164\151\164\154\145\142\141\162" + "\040\150\145\141\144\145\162\142\141\162\056\144\145\146\141\165" + "\154\164\055\144\145\143\157\162\141\164\151\157\156\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\063\066\160\170" + "\073\040\175\012\012\167\151\156\144\157\167\040\076\040\150\145" + "\141\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162" + "\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164" + "\151\157\156\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\054\040\167\151\156\144\157\167" + "\040\076\040\056\164\151\164\154\145\142\141\162\040\150\145\141" + "\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144" + "\145\143\157\162\141\164\151\157\156\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\040\173" + "\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072" + "\040\063\160\170\073\040\175\012\012\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162\040" + "\150\145\141\144\145\162\142\141\162\054\040\164\157\157\154\142" + "\141\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155" + "\055\142\141\162\040\150\145\141\144\145\162\142\141\162\054\040" + "\150\145\141\144\145\162\142\141\162\056\146\154\141\164\054\040" + "\167\151\156\144\157\167\056\163\150\157\162\164\143\165\164\163" + "\040\150\145\141\144\145\162\142\141\162\056\164\151\164\154\145" + "\142\141\162\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\150\145\141\144\145\162\142\141\162\056\164\151\164\154" + "\145\142\141\162\054\040\167\151\156\144\157\167\056\160\141\147" + "\145\163\145\164\165\160\040\150\145\141\144\145\162\142\141\162" + "\056\164\151\164\154\145\142\141\162\054\040\167\151\156\144\157" + "\167\056\141\142\157\165\164\144\151\141\154\157\147\040\150\145" + "\141\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162" + "\054\040\167\151\156\144\157\167\056\143\157\154\157\162\143\150" + "\157\157\163\145\162\040\150\145\141\144\145\162\142\141\162\056" + "\164\151\164\154\145\142\141\162\054\040\167\151\156\144\157\167" + "\056\141\160\160\143\150\157\157\163\145\162\040\150\145\141\144" + "\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156" + "\145\073\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\143\157\154\157\162\072\040\151\156\150\145" + "\162\151\164\073\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\064\066\160\170\073\040\175\012\012\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162" + "\040\150\145\141\144\145\162\142\141\162\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054" + "\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056" + "\142\157\164\164\157\155\055\142\141\162\040\150\145\141\144\145" + "\162\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156" + "\144\154\145\040\076\040\142\157\170\054\040\150\145\141\144\145" + "\162\142\141\162\056\146\154\141\164\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\167\151\156\144\157\167\056\163\150\157\162\164\143\165\164\163" + "\040\150\145\141\144\145\162\142\141\162\056\164\151\164\154\145" + "\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\054\040\167\151\156\144\157\167" + "\056\160\162\151\156\164\040\150\145\141\144\145\162\142\141\162" + "\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\167\151\156\144\157\167\056\160\141\147\145\163\145\164\165\160" + "\040\150\145\141\144\145\162\142\141\162\056\164\151\164\154\145" + "\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\054\040\167\151\156\144\157\167" + "\056\141\142\157\165\164\144\151\141\154\157\147\040\150\145\141" + "\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076" + "\040\142\157\170\054\040\167\151\156\144\157\167\056\143\157\154" + "\157\162\143\150\157\157\163\145\162\040\150\145\141\144\145\162" + "\142\141\162\056\164\151\164\154\145\142\141\162\040\076\040\167" + "\151\156\144\157\167\150\141\156\144\154\145\040\076\040\142\157" + "\170\054\040\167\151\156\144\157\167\056\141\160\160\143\150\157" + "\157\163\145\162\040\150\145\141\144\145\162\142\141\162\056\164" + "\151\164\154\145\142\141\162\040\076\040\167\151\156\144\157\167" + "\150\141\156\144\154\145\040\076\040\142\157\170\040\173\040\160" + "\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040\066" + "\160\170\073\040\175\012\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\150\145" + "\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055" + "\144\145\143\157\162\141\164\151\157\156\054\040\164\157\157\154" + "\142\141\162\166\151\145\167\040\076\040\056\142\157\164\164\157" + "\155\055\142\141\162\040\150\145\141\144\145\162\142\141\162\056" + "\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151" + "\157\156\054\040\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\056\146\154\141\164\054\040\167\151\156\144\157\167\056\163\150" + "\157\162\164\143\165\164\163\040\150\145\141\144\145\162\142\141" + "\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141" + "\164\151\157\156\056\164\151\164\154\145\142\141\162\054\040\167" + "\151\156\144\157\167\056\160\162\151\156\164\040\150\145\141\144" + "\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144\145" + "\143\157\162\141\164\151\157\156\056\164\151\164\154\145\142\141" + "\162\054\040\167\151\156\144\157\167\056\160\141\147\145\163\145" + "\164\165\160\040\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\056\164\151\164\154\145\142\141\162\054\040\167\151\156\144\157" + "\167\056\141\142\157\165\164\144\151\141\154\157\147\040\150\145" + "\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055" + "\144\145\143\157\162\141\164\151\157\156\056\164\151\164\154\145" + "\142\141\162\054\040\167\151\156\144\157\167\056\143\157\154\157" + "\162\143\150\157\157\163\145\162\040\150\145\141\144\145\162\142" + "\141\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162" + "\141\164\151\157\156\056\164\151\164\154\145\142\141\162\054\040" + "\167\151\156\144\157\167\056\141\160\160\143\150\157\157\163\145" + "\162\040\150\145\141\144\145\162\142\141\162\056\144\145\146\141" + "\165\154\164\055\144\145\143\157\162\141\164\151\157\156\056\164" + "\151\164\154\145\142\141\162\040\173\040\155\151\156\055\150\145" + "\151\147\150\164\072\040\063\066\160\170\073\040\175\012\012\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\040\150\145\141\144\145\162\142\141\162\056" + "\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151" + "\157\156\040\076\040\167\151\156\144\157\167\150\141\156\144\154" + "\145\040\076\040\142\157\170\054\040\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142" + "\141\162\040\150\145\141\144\145\162\142\141\162\056\144\145\146" + "\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076" + "\040\142\157\170\054\040\150\145\141\144\145\162\142\141\162\056" + "\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151" + "\157\156\056\146\154\141\164\040\076\040\167\151\156\144\157\167" + "\150\141\156\144\154\145\040\076\040\142\157\170\054\040\167\151" + "\156\144\157\167\056\163\150\157\162\164\143\165\164\163\040\150" + "\145\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164" + "\055\144\145\143\157\162\141\164\151\157\156\056\164\151\164\154" + "\145\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156" + "\144\154\145\040\076\040\142\157\170\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\150\145\141\144\145\162\142\141" + "\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141" + "\164\151\157\156\056\164\151\164\154\145\142\141\162\040\076\040" + "\167\151\156\144\157\167\150\141\156\144\154\145\040\076\040\142" + "\157\170\054\040\167\151\156\144\157\167\056\160\141\147\145\163" + "\145\164\165\160\040\150\145\141\144\145\162\142\141\162\056\144" + "\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157" + "\156\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054" + "\040\167\151\156\144\157\167\056\141\142\157\165\164\144\151\141" + "\154\157\147\040\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\167\151\156\144\157\167\056\143\157\154\157\162\143\150\157\157" + "\163\145\162\040\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\167\151\156\144\157\167\056\141\160\160\143\150\157\157\163\145" + "\162\040\150\145\141\144\145\162\142\141\162\056\144\145\146\141" + "\165\154\164\055\144\145\143\157\162\141\164\151\157\156\056\164" + "\151\164\154\145\142\141\162\040\076\040\167\151\156\144\157\167" + "\150\141\156\144\154\145\040\076\040\142\157\170\040\173\040\160" + "\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040\063" + "\160\170\073\040\175\012\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\150\145" + "\141\144\145\162\142\141\162\072\142\141\143\153\144\162\157\160" + "\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\142\157\164\164\157\155\055\142\141\162\040\150\145\141\144" + "\145\162\142\141\162\072\142\141\143\153\144\162\157\160\040\173" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\156\157\156" + "\145\073\040\175\012\012\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\164\157\160\055\142\141\162\040\150\145\141" + "\144\145\162\142\141\162\072\142\141\143\153\144\162\157\160\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\054\040" + "\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142" + "\157\164\164\157\155\055\142\141\162\040\150\145\141\144\145\162" + "\142\141\162\072\142\141\143\153\144\162\157\160\040\076\040\167" + "\151\156\144\157\167\150\141\156\144\154\145\040\173\040\146\151" + "\154\164\145\162\072\040\156\157\156\145\073\040\164\162\141\156" + "\163\151\164\151\157\156\072\040\156\157\156\145\073\040\175\012" + "\012\167\151\156\144\157\167\056\144\145\166\145\154\040\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157\160" + "\055\142\141\162\040\150\145\141\144\145\162\142\141\162\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\040\167\151\156\144\157\167\056\144\145\166" + "\145\154\040\150\145\141\144\145\162\142\141\162\040\076\040\167" + "\151\156\144\157\167\150\141\156\144\154\145\054\040\167\151\156" + "\144\157\167\056\144\145\166\145\154\040\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055" + "\142\141\162\040\150\145\141\144\145\162\142\141\162\040\076\040" + "\167\151\156\144\157\167\150\141\156\144\154\145\054\040\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157\164" + "\164\157\155\055\142\141\162\040\167\151\156\144\157\167\056\144" + "\145\166\145\154\040\150\145\141\144\145\162\142\141\162\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145" + "\072\040\156\157\156\145\073\040\175\012\012\164\157\157\154\142" + "\141\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141" + "\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143" + "\151\156\147\040\150\145\141\144\145\162\142\141\162\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157" + "\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141\160" + "\163\145\055\163\160\141\143\151\156\147\040\150\145\141\144\145" + "\162\142\141\162\054\040\167\151\156\144\157\167\056\163\150\157" + "\162\164\143\165\164\163\040\150\145\141\144\145\162\142\141\162" + "\056\164\151\164\154\145\142\141\162\054\040\167\151\156\144\157" + "\167\056\141\160\160\143\150\157\157\163\145\162\040\150\145\141" + "\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040" + "\173\040\155\151\156\055\150\145\151\147\150\164\072\040\064\060" + "\160\170\073\040\175\012\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\056\143" + "\157\154\154\141\160\163\145\055\163\160\141\143\151\156\147\040" + "\150\145\141\144\145\162\142\141\162\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142" + "\157\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141" + "\160\163\145\055\163\160\141\143\151\156\147\040\150\145\141\144" + "\145\162\142\141\162\040\076\040\167\151\156\144\157\167\150\141" + "\156\144\154\145\040\076\040\142\157\170\054\040\167\151\156\144" + "\157\167\056\163\150\157\162\164\143\165\164\163\040\150\145\141" + "\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076" + "\040\142\157\170\054\040\167\151\156\144\157\167\056\141\160\160" + "\143\150\157\157\163\145\162\040\150\145\141\144\145\162\142\141" + "\162\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170\040" + "\173\040\160\141\144\144\151\156\147\055\164\157\160\072\040\063" + "\160\170\073\040\160\141\144\144\151\156\147\055\142\157\164\164" + "\157\155\072\040\063\160\170\073\040\175\012\012\164\157\157\154" + "\142\141\162\166\151\145\167\040\076\040\056\164\157\160\055\142" + "\141\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141" + "\143\151\156\147\040\150\145\141\144\145\162\142\141\162\056\144" + "\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157" + "\156\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\142\157\164\164\157\155\055\142\141\162\040\056\143\157" + "\154\154\141\160\163\145\055\163\160\141\143\151\156\147\040\150" + "\145\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164" + "\055\144\145\143\157\162\141\164\151\157\156\054\040\167\151\156" + "\144\157\167\056\163\150\157\162\164\143\165\164\163\040\150\145" + "\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055" + "\144\145\143\157\162\141\164\151\157\156\056\164\151\164\154\145" + "\142\141\162\054\040\167\151\156\144\157\167\056\141\160\160\143" + "\150\157\157\163\145\162\040\150\145\141\144\145\162\142\141\162" + "\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164" + "\151\157\156\056\164\151\164\154\145\142\141\162\040\173\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\063\060\160\170\073" + "\040\175\012\012\164\157\157\154\142\141\162\166\151\145\167\040" + "\076\040\056\164\157\160\055\142\141\162\040\056\143\157\154\154" + "\141\160\163\145\055\163\160\141\143\151\156\147\040\150\145\141" + "\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144" + "\145\143\157\162\141\164\151\157\156\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142" + "\157\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141" + "\160\163\145\055\163\160\141\143\151\156\147\040\150\145\141\144" + "\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144\145" + "\143\157\162\141\164\151\157\156\040\076\040\167\151\156\144\157" + "\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040\167" + "\151\156\144\157\167\056\163\150\157\162\164\143\165\164\163\040" + "\150\145\141\144\145\162\142\141\162\056\144\145\146\141\165\154" + "\164\055\144\145\143\157\162\141\164\151\157\156\056\164\151\164" + "\154\145\142\141\162\040\076\040\167\151\156\144\157\167\150\141" + "\156\144\154\145\040\076\040\142\157\170\054\040\167\151\156\144" + "\157\167\056\141\160\160\143\150\157\157\163\145\162\040\150\145" + "\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055" + "\144\145\143\157\162\141\164\151\157\156\056\164\151\164\154\145" + "\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\040\173\040\160\141\144\144\151" + "\156\147\055\164\157\160\072\040\060\160\170\073\040\160\141\144" + "\144\151\156\147\055\142\157\164\164\157\155\072\040\060\160\170" + "\073\040\175\012\012\056\164\151\164\154\145\142\141\162\072\156" + "\157\164\050\150\145\141\144\145\162\142\141\162\051\040\163\145" + "\160\141\162\141\164\157\162\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\100\150\145\141\144\145\162\142\141\162\137\142\157\162" + "\144\145\162\137\143\157\154\157\162\054\060\056\065\051\073\040" + "\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\040\107\164\153\127\151\156" + "\144\157\167\103\157\156\164\162\157\154\163\040\052\040\052\057" + "\012\167\151\156\144\157\167\143\157\156\164\162\157\154\163\040" + "\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\063\160\170\073\040\175\012\012\167\151\156\144\157\167" + "\143\157\156\164\162\157\154\163\040\076\040\142\165\164\164\157" + "\156\040\173\040\155\151\156\055\167\151\144\164\150\072\040\062" + "\064\160\170\073\040\160\141\144\144\151\156\147\072\040\065\160" + "\170\073\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\175\012\012\167\151\156\144\157\167\143\157" + "\156\164\162\157\154\163\040\076\040\142\165\164\164\157\156\040" + "\076\040\151\155\141\147\145\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\051\073\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\061\060\060\045\073\040\160\141\144\144\151\156" + "\147\072\040\062\160\170\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\142\141\143\153\147\162\157\165\156\144\040\062" + "\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145" + "\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056" + "\064\065\054\040\060\056\071\064\051\054\040\142\157\170\055\163" + "\150\141\144\157\167\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\073\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\060\040\060\040\060\040\061\160\170\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\065\051\073\040\175\012\012\167\151\156\144\157\167" + "\143\157\156\164\162\157\154\163\040\076\040\142\165\164\164\157" + "\156\054\040\167\151\156\144\157\167\143\157\156\164\162\157\154" + "\163\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\167\151\156\144\157\167\143\157\156\164\162\157\154\163" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\175\012\012\167\151\156\144\157\167\143\157" + "\156\164\162\157\154\163\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\040\076\040\151\155\141\147\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\061\065\051\073\040\175\012\012\167" + "\151\156\144\157\167\143\157\156\164\162\157\154\163\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\040\076\040" + "\151\155\141\147\145\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\063" + "\051\073\040\175\012\012\167\151\156\144\157\167\143\157\156\164" + "\162\157\154\163\040\076\040\056\151\143\157\156\040\173\040\155" + "\141\162\147\151\156\072\040\071\160\170\073\040\175\012\012\057" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\040\101\144\167\127\151\156\144\157\167\124\151\164\154" + "\145\040\052\040\052\057\012\150\145\141\144\145\162\142\141\162" + "\040\056\164\151\164\154\145\054\040\167\151\156\144\157\167\164" + "\151\164\154\145\040\056\164\151\164\154\145\040\173\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\061\062\160\170" + "\073\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072" + "\040\061\062\160\170\073\040\146\157\156\164\055\167\145\151\147" + "\150\164\072\040\142\157\154\144\073\040\175\012\012\150\145\141" + "\144\145\162\142\141\162\040\056\163\165\142\164\151\164\154\145" + "\054\040\167\151\156\144\157\167\164\151\164\154\145\040\056\163" + "\165\142\164\151\164\154\145\040\173\040\146\157\156\164\055\163" + "\151\172\145\072\040\163\155\141\154\154\145\162\073\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\061\062\160\170" + "\073\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072" + "\040\061\062\160\170\073\040\175\012\012\167\151\156\144\157\167" + "\164\151\164\154\145\040\173\040\155\141\162\147\151\156\055\164" + "\157\160\072\040\055\066\160\170\073\040\155\141\162\147\151\156" + "\055\142\157\164\164\157\155\072\040\055\066\160\170\073\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\061\062\160\170\073" + "\040\175\012\012\167\151\156\144\157\167\056\144\145\166\145\154" + "\040\150\145\141\144\145\162\142\141\162\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\143\162" + "\157\163\163\055\146\141\144\145\050\065\045\040\055\147\164\153" + "\055\162\145\143\157\154\157\162\050\165\162\154\050\042\141\163" + "\163\145\164\163\057\144\145\166\145\154\055\163\171\155\142\157" + "\154\151\143\056\163\166\147\042\051\051\054\040\151\155\141\147" + "\145\050\164\162\141\156\163\160\141\162\145\156\164\051\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\162\145\160\145" + "\141\164\072\040\162\145\160\145\141\164\055\170\073\040\175\012" + "\012\167\151\156\144\157\167\056\144\145\166\145\154\040\144\151" + "\141\154\157\147\040\150\145\141\144\145\162\142\141\162\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145" + "\072\040\165\156\163\145\164\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\162\145\160\145\141\164\072\040\165\156\163\145" + "\164\073\040\175\012\012\154\141\142\145\154\040\173\040\143\141" + "\162\145\164\055\143\157\154\157\162\072\040\143\165\162\162\145" + "\156\164\103\157\154\157\162\073\040\175\012\012\154\141\142\145" + "\154\072\144\151\163\141\142\154\145\144\040\173\040\146\151\154" + "\164\145\162\072\040\157\160\141\143\151\164\171\050\060\056\064" + "\051\073\040\175\012\012\056\144\151\155\055\154\141\142\145\154" + "\054\040\163\143\141\154\145\040\076\040\166\141\154\165\145\054" + "\040\160\162\157\147\162\145\163\163\142\141\162\040\076\040\164" + "\145\170\164\054\040\162\157\167\056\145\170\160\141\156\144\145" + "\162\040\151\155\141\147\145\056\145\170\160\141\156\144\145\162" + "\055\162\157\167\055\141\162\162\157\167\054\040\162\157\167\056" + "\160\162\157\160\145\162\164\171\040\076\040\142\157\170\056\150" + "\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154" + "\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167\056" + "\145\170\160\141\156\144\145\162\056\160\162\157\160\145\162\164" + "\171\040\142\157\170\040\076\040\154\151\163\164\040\076\040\162" + "\157\167\040\076\040\142\157\170\056\150\145\141\144\145\162\040" + "\076\040\142\157\170\056\164\151\164\154\145\040\076\040\056\164" + "\151\164\154\145\054\040\162\157\167\040\154\141\142\145\154\056" + "\163\165\142\164\151\164\154\145\054\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\164\145\170\164\040\076\040\160\154" + "\141\143\145\150\157\154\144\145\162\054\040\145\156\164\162\171" + "\040\076\040\164\145\170\164\040\076\040\160\154\141\143\145\150" + "\157\154\144\145\162\054\040\150\145\141\144\145\162\142\141\162" + "\040\056\163\165\142\164\151\164\154\145\054\040\167\151\156\144" + "\157\167\164\151\164\154\145\040\056\163\165\142\164\151\164\154" + "\145\054\040\154\141\142\145\154\056\163\145\160\141\162\141\164" + "\157\162\040\173\040\157\160\141\143\151\164\171\072\040\060\056" + "\071\073\040\175\012\012\056\141\143\143\145\156\164\040\173\040" + "\143\157\154\157\162\072\040\100\141\143\143\145\156\164\137\143" + "\157\154\157\162\073\040\175\012\012\056\163\165\143\143\145\163" + "\163\040\173\040\143\157\154\157\162\072\040\100\163\165\143\143" + "\145\163\163\137\143\157\154\157\162\073\040\175\012\012\056\167" + "\141\162\156\151\156\147\040\173\040\143\157\154\157\162\072\040" + "\100\167\141\162\156\151\156\147\137\143\157\154\157\162\073\040" + "\175\012\012\056\145\162\162\157\162\040\173\040\143\157\154\157" + "\162\072\040\100\145\162\162\157\162\137\143\157\154\157\162\073" + "\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\040\107\145\156\145" + "\162\141\154\040\124\171\160\157\147\162\141\160\150\171\040\052" + "\040\052\057\012\056\164\151\164\154\145\055\061\040\173\040\146" + "\157\156\164\055\167\145\151\147\150\164\072\040\070\060\060\073" + "\040\146\157\156\164\055\163\151\172\145\072\040\062\060\160\164" + "\073\040\175\012\012\056\164\151\164\154\145\055\062\040\173\040" + "\146\157\156\164\055\167\145\151\147\150\164\072\040\070\060\060" + "\073\040\146\157\156\164\055\163\151\172\145\072\040\061\065\160" + "\164\073\040\175\012\012\056\164\151\164\154\145\055\063\040\173" + "\040\146\157\156\164\055\167\145\151\147\150\164\072\040\067\060" + "\060\073\040\146\157\156\164\055\163\151\172\145\072\040\061\065" + "\160\164\073\040\175\012\012\056\164\151\164\154\145\055\064\040" + "\173\040\146\157\156\164\055\167\145\151\147\150\164\072\040\067" + "\060\060\073\040\146\157\156\164\055\163\151\172\145\072\040\061" + "\063\160\164\073\040\175\012\012\056\150\145\141\144\151\156\147" + "\054\040\154\151\163\164\166\151\145\167\040\076\040\150\145\141" + "\144\145\162\040\173\040\146\157\156\164\055\167\145\151\147\150" + "\164\072\040\067\060\060\073\040\146\157\156\164\055\163\151\172" + "\145\072\040\061\061\160\164\073\040\175\012\012\056\142\157\144" + "\171\040\173\040\146\157\156\164\055\167\145\151\147\150\164\072" + "\040\064\060\060\073\040\146\157\156\164\055\163\151\172\145\072" + "\040\061\061\160\164\073\040\175\012\012\056\143\141\160\164\151" + "\157\156\055\150\145\141\144\151\156\147\040\173\040\146\157\156" + "\164\055\167\145\151\147\150\164\072\040\067\060\060\073\040\146" + "\157\156\164\055\163\151\172\145\072\040\071\160\164\073\040\175" + "\012\012\056\143\141\160\164\151\157\156\040\173\040\146\157\156" + "\164\055\167\145\151\147\150\164\072\040\064\060\060\073\040\146" + "\157\156\164\055\163\151\172\145\072\040\071\160\164\073\040\175" + "\012\012\056\155\157\156\157\163\160\141\143\145\040\173\040\146" + "\157\156\164\055\146\141\155\151\154\171\072\040\155\157\156\157" + "\163\160\141\143\145\073\040\175\012\012\056\156\165\155\145\162" + "\151\143\054\040\163\160\151\156\142\165\164\164\157\156\054\040" + "\163\143\141\154\145\040\076\040\166\141\154\165\145\054\040\160" + "\162\157\147\162\145\163\163\142\141\162\040\076\040\164\145\170" + "\164\040\173\040\146\157\156\164\055\146\145\141\164\165\162\145" + "\055\163\145\164\164\151\156\147\163\072\040\042\164\156\165\155" + "\042\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\040\105\144\151\164\141" + "\142\154\145\040\114\141\142\145\154\163\040\052\040\052\057\012" + "\145\144\151\164\141\142\154\145\154\141\142\145\154\040\076\040" + "\163\164\141\143\153\040\076\040\164\145\170\164\040\173\040\143" + "\157\154\157\162\072\040\100\166\151\145\167\137\146\147\137\143" + "\157\154\157\162\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\166\151\145\167\137\142\147" + "\137\143\157\154\157\162\073\040\175\012\012\154\145\166\145\154" + "\142\141\162\072\144\151\163\141\142\154\145\144\040\173\040\146" + "\151\154\164\145\162\072\040\157\160\141\143\151\164\171\050\060" + "\056\064\051\073\040\175\012\012\154\145\166\145\154\142\141\162" + "\056\150\157\162\151\172\157\156\164\141\154\040\164\162\157\165" + "\147\150\040\076\040\142\154\157\143\153\040\173\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\070\160\170\073\040\142\157" + "\162\144\145\162\055\162\141\144\151\165\163\072\040\071\071\160" + "\170\073\040\175\012\012\154\145\166\145\154\142\141\162\056\150" + "\157\162\151\172\157\156\164\141\154\040\164\162\157\165\147\150" + "\040\076\040\142\154\157\143\153\056\145\155\160\164\171\054\040" + "\154\145\166\145\154\142\141\162\056\150\157\162\151\172\157\156" + "\164\141\154\040\164\162\157\165\147\150\040\076\040\142\154\157" + "\143\153\056\146\165\154\154\040\173\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\071\071\160\170\073\040\175" + "\012\012\154\145\166\145\154\142\141\162\056\150\157\162\151\172" + "\157\156\164\141\154\056\144\151\163\143\162\145\164\145\040\076" + "\040\164\162\157\165\147\150\040\076\040\142\154\157\143\153\040" + "\173\040\155\151\156\055\150\145\151\147\150\164\072\040\070\160" + "\170\073\040\155\141\162\147\151\156\055\162\151\147\150\164\072" + "\040\062\160\170\073\040\155\151\156\055\167\151\144\164\150\072" + "\040\062\066\160\170\073\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\060\073\040\175\012\012\154\145\166\145" + "\154\142\141\162\056\150\157\162\151\172\157\156\164\141\154\056" + "\144\151\163\143\162\145\164\145\040\076\040\164\162\157\165\147" + "\150\040\076\040\142\154\157\143\153\072\146\151\162\163\164\055" + "\143\150\151\154\144\040\173\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\071\071\160\170\040\060\040\060\040" + "\071\071\160\170\073\040\175\012\012\154\145\166\145\154\142\141" + "\162\056\150\157\162\151\172\157\156\164\141\154\056\144\151\163" + "\143\162\145\164\145\040\076\040\164\162\157\165\147\150\040\076" + "\040\142\154\157\143\153\072\154\141\163\164\055\143\150\151\154" + "\144\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\060\040\071\071\160\170\040\071\071\160\170\040\060" + "\073\040\155\141\162\147\151\156\055\162\151\147\150\164\072\040" + "\060\073\040\175\012\012\154\145\166\145\154\142\141\162\056\166" + "\145\162\164\151\143\141\154\040\164\162\157\165\147\150\040\076" + "\040\142\154\157\143\153\040\173\040\155\151\156\055\167\151\144" + "\164\150\072\040\070\160\170\073\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\071\071\160\170\073\040\175\012" + "\012\154\145\166\145\154\142\141\162\056\166\145\162\164\151\143" + "\141\154\040\164\162\157\165\147\150\040\076\040\142\154\157\143" + "\153\056\145\155\160\164\171\054\040\154\145\166\145\154\142\141" + "\162\056\166\145\162\164\151\143\141\154\040\164\162\157\165\147" + "\150\040\076\040\142\154\157\143\153\056\146\165\154\154\040\173" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\071\071\160\170\073\040\175\012\012\154\145\166\145\154\142\141" + "\162\056\166\145\162\164\151\143\141\154\056\144\151\163\143\162" + "\145\164\145\040\076\040\164\162\157\165\147\150\040\076\040\142" + "\154\157\143\153\040\173\040\155\151\156\055\167\151\144\164\150" + "\072\040\070\160\170\073\040\155\141\162\147\151\156\055\142\157" + "\164\164\157\155\072\040\062\160\170\073\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\062\066\160\170\073\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\060\073\040\175" + "\012\012\154\145\166\145\154\142\141\162\056\166\145\162\164\151" + "\143\141\154\056\144\151\163\143\162\145\164\145\040\076\040\164" + "\162\157\165\147\150\040\076\040\142\154\157\143\153\072\146\151" + "\162\163\164\055\143\150\151\154\144\040\173\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\071\071\160\170\040" + "\071\071\160\170\040\060\040\060\073\040\175\012\012\154\145\166" + "\145\154\142\141\162\056\166\145\162\164\151\143\141\154\056\144" + "\151\163\143\162\145\164\145\040\076\040\164\162\157\165\147\150" + "\040\076\040\142\154\157\143\153\072\154\141\163\164\055\143\150" + "\151\154\144\040\173\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\060\040\060\040\071\071\160\170\040\071\071" + "\160\170\073\040\155\141\162\147\151\156\055\142\157\164\164\157" + "\155\072\040\060\073\040\175\012\012\154\145\166\145\154\142\141" + "\162\040\076\040\164\162\157\165\147\150\040\173\040\160\141\144" + "\144\151\156\147\072\040\060\073\040\175\012\012\154\145\166\145" + "\154\142\141\162\040\076\040\164\162\157\165\147\150\040\076\040" + "\142\154\157\143\153\056\154\157\167\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100\167" + "\141\162\156\151\156\147\137\142\147\137\143\157\154\157\162\073" + "\040\175\012\012\154\145\166\145\154\142\141\162\040\076\040\164" + "\162\157\165\147\150\040\076\040\142\154\157\143\153\056\150\151" + "\147\150\054\040\154\145\166\145\154\142\141\162\040\076\040\164" + "\162\157\165\147\150\040\076\040\142\154\157\143\153\072\156\157" + "\164\050\056\145\155\160\164\171\051\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073\040" + "\175\012\012\154\145\166\145\154\142\141\162\040\076\040\164\162" + "\157\165\147\150\040\076\040\142\154\157\143\153\056\146\165\154" + "\154\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\100\163\165\143\143\145\163\163\137\142" + "\147\137\143\157\154\157\162\073\040\175\012\012\154\145\166\145" + "\154\142\141\162\040\076\040\164\162\157\165\147\150\040\076\040" + "\142\154\157\143\153\056\145\155\160\164\171\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\063\051\073\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\151\156\163\145\164\040\060\040\060\040\060" + "\040\061\160\170\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\065\051\073\040\175\012" + "\012\056\157\163\144\040\154\145\166\145\154\142\141\162\040\076" + "\040\164\162\157\165\147\150\040\076\040\142\154\157\143\153\056" + "\150\151\147\150\054\040\056\157\163\144\040\154\145\166\145\154" + "\142\141\162\040\076\040\164\162\157\165\147\150\040\076\040\142" + "\154\157\143\153\072\156\157\164\050\056\145\155\160\164\171\051" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\162\147\142\141\050\062\065\065\054\040\062" + "\065\065\054\040\062\065\065\054\040\060\056\067\065\051\073\040" + "\175\012\012\056\154\151\156\153\145\144\072\156\157\164\050\056" + "\166\145\162\164\151\143\141\154\051\040\076\040\142\165\164\164" + "\157\156\072\144\151\162\050\154\164\162\051\072\156\157\164\050" + "\072\146\151\162\163\164\055\143\150\151\154\144\051\054\040\056" + "\154\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164" + "\151\143\141\154\051\040\076\040\142\165\164\164\157\156\072\144" + "\151\162\050\162\164\154\051\072\156\157\164\050\072\154\141\163" + "\164\055\143\150\151\154\144\051\040\173\040\142\157\162\144\145" + "\162\055\164\157\160\055\154\145\146\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164" + "\164\157\155\055\154\145\146\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\155\141\162\147\151\156\055\154\145\146\164\072" + "\040\055\061\160\170\073\040\175\012\012\056\154\151\156\153\145" + "\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051" + "\040\076\040\142\165\164\164\157\156\072\144\151\162\050\154\164" + "\162\051\072\156\157\164\050\072\154\141\163\164\055\143\150\151" + "\154\144\051\054\040\056\154\151\156\153\145\144\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\142\165" + "\164\164\157\156\072\144\151\162\050\162\164\154\051\072\156\157" + "\164\050\072\146\151\162\163\164\055\143\150\151\154\144\051\040" + "\173\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\060\073\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\162\151\147\150" + "\164\055\162\141\144\151\165\163\072\040\060\073\040\175\012\012" + "\056\154\151\156\153\145\144\056\166\145\162\164\151\143\141\154" + "\040\142\165\164\164\157\156\072\156\157\164\050\072\146\151\162" + "\163\164\055\143\150\151\154\144\051\040\173\040\142\157\162\144" + "\145\162\055\164\157\160\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\142\157\162\144\145\162\055\164\157" + "\160\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\155\141\162\147\151\156\055\164\157\160\072\040\055" + "\061\160\170\073\040\175\012\012\056\154\151\156\153\145\144\056" + "\166\145\162\164\151\143\141\154\040\142\165\164\164\157\156\072" + "\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051" + "\040\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155" + "\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\162" + "\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\175\012\012\056\154\151\156\153\145\144\072\156\157\164\050\056" + "\166\145\162\164\151\143\141\154\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\072\144\151\162\050\154\164\162\051\072" + "\156\157\164\050\072\146\151\162\163\164\055\143\150\151\154\144" + "\051\040\076\040\142\165\164\164\157\156\054\040\056\154\151\156" + "\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141" + "\154\051\040\076\040\155\145\156\165\142\165\164\164\157\156\072" + "\144\151\162\050\162\164\154\051\072\156\157\164\050\072\154\141" + "\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164\164" + "\157\156\040\173\040\142\157\162\144\145\162\055\164\157\160\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\142\157\162\144\145\162\055\142\157\164\164\157\155\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\060\073\040\155\141" + "\162\147\151\156\055\154\145\146\164\072\040\055\061\160\170\073" + "\040\175\012\012\056\154\151\156\153\145\144\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\072\144\151\162\050\154\164\162\051" + "\072\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144" + "\051\040\076\040\142\165\164\164\157\156\054\040\056\154\151\156" + "\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141" + "\154\051\040\076\040\155\145\156\165\142\165\164\164\157\156\072" + "\144\151\162\050\162\164\154\051\072\156\157\164\050\072\146\151" + "\162\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164" + "\164\157\156\040\173\040\142\157\162\144\145\162\055\164\157\160" + "\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040\060" + "\073\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\162\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\175\012\012\056\154\151\156\153\145\144\056\166\145\162\164" + "\151\143\141\154\040\155\145\156\165\142\165\164\164\157\156\072" + "\156\157\164\050\072\146\151\162\163\164\055\143\150\151\154\144" + "\051\040\076\040\142\165\164\164\157\156\040\173\040\142\157\162" + "\144\145\162\055\164\157\160\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055\164" + "\157\160\055\162\151\147\150\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\055\061\160\170\073\040\175\012\012\056\154\151\156\153\145\144" + "\056\166\145\162\164\151\143\141\154\040\155\145\156\165\142\165" + "\164\164\157\156\072\156\157\164\050\072\154\141\163\164\055\143" + "\150\151\154\144\051\040\076\040\142\165\164\164\157\156\040\173" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\154" + "\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040\142" + "\157\162\144\145\162\055\142\157\164\164\157\155\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\060\073\040\175\012" + "\012\056\154\151\156\153\145\144\072\156\157\164\050\056\166\145" + "\162\164\151\143\141\154\051\040\076\040\144\162\157\160\144\157" + "\167\156\072\144\151\162\050\154\164\162\051\072\156\157\164\050" + "\072\146\151\162\163\164\055\143\150\151\154\144\051\040\076\040" + "\142\165\164\164\157\156\054\040\056\154\151\156\153\145\144\072" + "\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076" + "\040\143\157\155\142\157\142\157\170\072\144\151\162\050\154\164" + "\162\051\072\156\157\164\050\072\146\151\162\163\164\055\143\150" + "\151\154\144\051\040\076\040\142\165\164\164\157\156\054\040\056" + "\154\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164" + "\151\143\141\154\051\040\076\040\144\162\157\160\144\157\167\156" + "\072\144\151\162\050\162\164\154\051\072\156\157\164\050\072\154" + "\141\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164" + "\164\157\156\054\040\056\154\151\156\153\145\144\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\143\157" + "\155\142\157\142\157\170\072\144\151\162\050\162\164\154\051\072" + "\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051" + "\040\076\040\142\165\164\164\157\156\040\173\040\142\157\162\144" + "\145\162\055\164\157\160\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\142\157\162\144\145\162\055\142\157" + "\164\164\157\155\055\154\145\146\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\155\141\162\147\151\156\055\154\145\146\164" + "\072\040\055\061\160\170\073\040\175\012\012\056\154\151\156\153" + "\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154" + "\051\040\076\040\144\162\157\160\144\157\167\156\072\144\151\162" + "\050\154\164\162\051\072\156\157\164\050\072\154\141\163\164\055" + "\143\150\151\154\144\051\040\076\040\142\165\164\164\157\156\054" + "\040\056\154\151\156\153\145\144\072\156\157\164\050\056\166\145" + "\162\164\151\143\141\154\051\040\076\040\143\157\155\142\157\142" + "\157\170\072\144\151\162\050\154\164\162\051\072\156\157\164\050" + "\072\154\141\163\164\055\143\150\151\154\144\051\040\076\040\142" + "\165\164\164\157\156\054\040\056\154\151\156\153\145\144\072\156" + "\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076\040" + "\144\162\157\160\144\157\167\156\072\144\151\162\050\162\164\154" + "\051\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\054\040\056\154" + "\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151" + "\143\141\154\051\040\076\040\143\157\155\142\157\142\157\170\072" + "\144\151\162\050\162\164\154\051\072\156\157\164\050\072\146\151" + "\162\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164" + "\164\157\156\040\173\040\142\157\162\144\145\162\055\164\157\160" + "\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040\060" + "\073\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\162\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\175\012\012\056\154\151\156\153\145\144\056\166\145\162\164" + "\151\143\141\154\040\144\162\157\160\144\157\167\156\072\156\157" + "\164\050\072\146\151\162\163\164\055\143\150\151\154\144\051\040" + "\076\040\142\165\164\164\157\156\054\040\056\154\151\156\153\145" + "\144\056\166\145\162\164\151\143\141\154\040\143\157\155\142\157" + "\142\157\170\072\156\157\164\050\072\146\151\162\163\164\055\143" + "\150\151\154\144\051\040\076\040\142\165\164\164\157\156\040\173" + "\040\142\157\162\144\145\162\055\164\157\160\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144" + "\145\162\055\164\157\160\055\162\151\147\150\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\155\141\162\147\151\156\055\164" + "\157\160\072\040\055\061\160\170\073\040\175\012\012\056\154\151" + "\156\153\145\144\056\166\145\162\164\151\143\141\154\040\144\162" + "\157\160\144\157\167\156\072\156\157\164\050\072\154\141\163\164" + "\055\143\150\151\154\144\051\040\076\040\142\165\164\164\157\156" + "\054\040\056\154\151\156\153\145\144\056\166\145\162\164\151\143" + "\141\154\040\143\157\155\142\157\142\157\170\072\156\157\164\050" + "\072\154\141\163\164\055\143\150\151\154\144\051\040\076\040\142" + "\165\164\164\157\156\040\173\040\142\157\162\144\145\162\055\142" + "\157\164\164\157\155\055\154\145\146\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164" + "\164\157\155\055\162\151\147\150\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\175\012\012\056\154\151\156\153\145\144\072" + "\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076" + "\040\143\157\154\157\162\142\165\164\164\157\156\072\144\151\162" + "\050\154\164\162\051\072\156\157\164\050\072\146\151\162\163\164" + "\055\143\150\151\154\144\051\040\076\040\142\165\164\164\157\156" + "\054\040\056\154\151\156\153\145\144\072\156\157\164\050\056\166" + "\145\162\164\151\143\141\154\051\040\076\040\143\157\154\157\162" + "\142\165\164\164\157\156\072\144\151\162\050\162\164\154\051\072" + "\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051" + "\040\076\040\142\165\164\164\157\156\040\173\040\142\157\162\144" + "\145\162\055\164\157\160\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\142\157\162\144\145\162\055\142\157" + "\164\164\157\155\055\154\145\146\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\155\141\162\147\151\156\055\154\145\146\164" + "\072\040\055\061\160\170\073\040\175\012\012\056\154\151\156\153" + "\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154" + "\051\040\076\040\143\157\154\157\162\142\165\164\164\157\156\072" + "\144\151\162\050\154\164\162\051\072\156\157\164\050\072\154\141" + "\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164\164" + "\157\156\054\040\056\154\151\156\153\145\144\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\076\040\143\157\154" + "\157\162\142\165\164\164\157\156\072\144\151\162\050\162\164\154" + "\051\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\162\151\147\150\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151" + "\156\153\145\144\056\166\145\162\164\151\143\141\154\040\143\157" + "\154\157\162\142\165\164\164\157\156\072\156\157\164\050\072\146" + "\151\162\163\164\055\143\150\151\154\144\051\040\076\040\142\165" + "\164\164\157\156\040\173\040\142\157\162\144\145\162\055\164\157" + "\160\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060" + "\073\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\060\073\040\155\141" + "\162\147\151\156\055\164\157\160\072\040\055\061\160\170\073\040" + "\175\012\012\056\154\151\156\153\145\144\056\166\145\162\164\151" + "\143\141\154\040\143\157\154\157\162\142\165\164\164\157\156\072" + "\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051" + "\040\076\040\142\165\164\164\157\156\040\173\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151\156" + "\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141" + "\154\051\040\076\040\146\157\156\164\142\165\164\164\157\156\072" + "\144\151\162\050\154\164\162\051\072\156\157\164\050\072\146\151" + "\162\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164" + "\164\157\156\054\040\056\154\151\156\153\145\144\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\146\157" + "\156\164\142\165\164\164\157\156\072\144\151\162\050\162\164\154" + "\051\072\156\157\164\050\072\154\141\163\164\055\143\150\151\154" + "\144\051\040\076\040\142\165\164\164\157\156\040\173\040\142\157" + "\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\155\141\162\147\151\156\055\154\145" + "\146\164\072\040\055\061\160\170\073\040\175\012\012\056\154\151" + "\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143" + "\141\154\051\040\076\040\146\157\156\164\142\165\164\164\157\156" + "\072\144\151\162\050\154\164\162\051\072\156\157\164\050\072\154" + "\141\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164" + "\164\157\156\054\040\056\154\151\156\153\145\144\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\146\157" + "\156\164\142\165\164\164\157\156\072\144\151\162\050\162\164\154" + "\051\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\162\151\147\150\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151" + "\156\153\145\144\056\166\145\162\164\151\143\141\154\040\146\157" + "\156\164\142\165\164\164\157\156\072\156\157\164\050\072\146\151" + "\162\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164" + "\164\157\156\040\173\040\142\157\162\144\145\162\055\164\157\160" + "\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147\150" + "\164\055\162\141\144\151\165\163\072\040\060\073\040\155\141\162" + "\147\151\156\055\164\157\160\072\040\055\061\160\170\073\040\175" + "\012\012\056\154\151\156\153\145\144\056\166\145\162\164\151\143" + "\141\154\040\146\157\156\164\142\165\164\164\157\156\072\156\157" + "\164\050\072\154\141\163\164\055\143\150\151\154\144\051\040\076" + "\040\142\165\164\164\157\156\040\173\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055\142" + "\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\175\012\012\056\154\151\156\153\145" + "\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051" + "\040\076\040\164\141\142\142\165\164\164\157\156\072\144\151\162" + "\050\154\164\162\051\072\156\157\164\050\072\146\151\162\163\164" + "\055\143\150\151\154\144\051\040\076\040\142\165\164\164\157\156" + "\054\040\056\154\151\156\153\145\144\072\156\157\164\050\056\166" + "\145\162\164\151\143\141\154\051\040\076\040\164\141\142\142\165" + "\164\164\157\156\072\144\151\162\050\162\164\154\051\072\156\157" + "\164\050\072\154\141\163\164\055\143\150\151\154\144\051\040\076" + "\040\142\165\164\164\157\156\040\173\040\142\157\162\144\145\162" + "\055\164\157\160\055\154\145\146\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\154\145\146\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\155\141\162\147\151\156\055\154\145\146\164\072\040" + "\055\061\160\170\073\040\175\012\012\056\154\151\156\153\145\144" + "\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040" + "\076\040\164\141\142\142\165\164\164\157\156\072\144\151\162\050" + "\154\164\162\051\072\156\157\164\050\072\154\141\163\164\055\143" + "\150\151\154\144\051\040\076\040\142\165\164\164\157\156\054\040" + "\056\154\151\156\153\145\144\072\156\157\164\050\056\166\145\162" + "\164\151\143\141\154\051\040\076\040\164\141\142\142\165\164\164" + "\157\156\072\144\151\162\050\162\164\154\051\072\156\157\164\050" + "\072\146\151\162\163\164\055\143\150\151\154\144\051\040\076\040" + "\142\165\164\164\157\156\040\173\040\142\157\162\144\145\162\055" + "\164\157\160\055\162\151\147\150\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\162\151\147\150\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\175\012\012\056\154\151\156\153\145\144\056\166" + "\145\162\164\151\143\141\154\040\164\141\142\142\165\164\164\157" + "\156\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162" + "\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\155\141\162\147\151\156\055\164\157\160" + "\072\040\055\061\160\170\073\040\175\012\012\056\154\151\156\153" + "\145\144\056\166\145\162\164\151\143\141\154\040\164\141\142\142" + "\165\164\164\157\156\072\156\157\164\050\072\154\141\163\164\055" + "\143\150\151\154\144\051\040\076\040\142\165\164\164\157\156\040" + "\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\142\157\162\144\145\162\055\142\157\164\164\157\155\055\162\151" + "\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040\175" + "\012\012\056\154\151\156\153\145\144\072\156\157\164\050\056\166" + "\145\162\164\151\143\141\154\051\040\076\040\163\160\151\156\142" + "\165\164\164\157\156\072\144\151\162\050\154\164\162\051\072\156" + "\157\164\050\072\146\151\162\163\164\055\143\150\151\154\144\051" + "\054\040\056\154\151\156\153\145\144\072\156\157\164\050\056\166" + "\145\162\164\151\143\141\154\051\040\076\040\163\160\151\156\142" + "\165\164\164\157\156\072\144\151\162\050\162\164\154\051\072\156" + "\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051\040" + "\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145\146" + "\164\055\162\141\144\151\165\163\072\040\060\073\040\142\157\162" + "\144\145\162\055\142\157\164\164\157\155\055\154\145\146\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\155\141\162\147\151" + "\156\055\154\145\146\164\072\040\055\061\160\170\073\040\175\012" + "\012\056\154\151\156\153\145\144\072\156\157\164\050\056\166\145" + "\162\164\151\143\141\154\051\040\076\040\163\160\151\156\142\165" + "\164\164\157\156\072\144\151\162\050\154\164\162\051\072\156\157" + "\164\050\072\154\141\163\164\055\143\150\151\154\144\051\054\040" + "\056\154\151\156\153\145\144\072\156\157\164\050\056\166\145\162" + "\164\151\143\141\154\051\040\076\040\163\160\151\156\142\165\164" + "\164\157\156\072\144\151\162\050\162\164\154\051\072\156\157\164" + "\050\072\146\151\162\163\164\055\143\150\151\154\144\051\040\173" + "\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147\150" + "\164\055\162\141\144\151\165\163\072\040\060\073\040\142\157\162" + "\144\145\162\055\142\157\164\164\157\155\055\162\151\147\150\164" + "\055\162\141\144\151\165\163\072\040\060\073\040\175\012\012\056" + "\154\151\156\153\145\144\056\166\145\162\164\151\143\141\154\040" + "\163\160\151\156\142\165\164\164\157\156\072\156\157\164\050\072" + "\146\151\162\163\164\055\143\150\151\154\144\051\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162" + "\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\155\141\162\147\151\156\055\164\157\160" + "\072\040\055\061\160\170\073\040\175\012\012\056\154\151\156\153" + "\145\144\056\166\145\162\164\151\143\141\154\040\163\160\151\156" + "\142\165\164\164\157\156\072\156\157\164\050\072\154\141\163\164" + "\055\143\150\151\154\144\051\040\173\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055\142" + "\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\175\012\012\056\154\151\156\153\145" + "\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051" + "\040\076\040\145\156\164\162\171\072\144\151\162\050\154\164\162" + "\051\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151" + "\154\144\051\054\040\056\154\151\156\153\145\144\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\145\156" + "\164\162\171\072\144\151\162\050\162\164\154\051\072\156\157\164" + "\050\072\154\141\163\164\055\143\150\151\154\144\051\040\173\040" + "\142\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\155\141\162\147\151\156\055" + "\154\145\146\164\072\040\055\061\160\170\073\040\175\012\012\056" + "\154\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164" + "\151\143\141\154\051\040\076\040\145\156\164\162\171\072\144\151" + "\162\050\154\164\162\051\072\156\157\164\050\072\154\141\163\164" + "\055\143\150\151\154\144\051\054\040\056\154\151\156\153\145\144" + "\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040" + "\076\040\145\156\164\162\171\072\144\151\162\050\162\164\154\051" + "\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151\154" + "\144\051\040\173\040\142\157\162\144\145\162\055\164\157\160\055" + "\162\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\162" + "\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\175\012\012\056\154\151\156\153\145\144\056\166\145\162\164\151" + "\143\141\154\040\145\156\164\162\171\072\156\157\164\050\072\146" + "\151\162\163\164\055\143\150\151\154\144\051\040\173\040\142\157" + "\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055" + "\164\157\160\055\162\151\147\150\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\155\141\162\147\151\156\055\164\157\160\072" + "\040\055\061\160\170\073\040\175\012\012\056\154\151\156\153\145" + "\144\056\166\145\162\164\151\143\141\154\040\145\156\164\162\171" + "\072\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144" + "\051\040\173\040\142\157\162\144\145\162\055\142\157\164\164\157" + "\155\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060" + "\073\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\162\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\175\012\012\056\154\151\156\153\145\144\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\076\040\143\157\155" + "\142\157\142\157\170\072\144\151\162\050\154\164\162\051\072\156" + "\157\164\050\072\146\151\162\163\164\055\143\150\151\154\144\051" + "\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156\056" + "\143\157\155\142\157\054\040\056\154\151\156\153\145\144\072\156" + "\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076\040" + "\143\157\155\142\157\142\157\170\072\144\151\162\050\162\164\154" + "\051\072\156\157\164\050\072\154\141\163\164\055\143\150\151\154" + "\144\051\040\076\040\142\157\170\040\076\040\142\165\164\164\157" + "\156\056\143\157\155\142\157\040\173\040\142\157\162\144\145\162" + "\055\164\157\160\055\154\145\146\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\154\145\146\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\155\141\162\147\151\156\055\154\145\146\164\072\040" + "\055\061\160\170\073\040\175\012\012\056\154\151\156\153\145\144" + "\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040" + "\076\040\143\157\155\142\157\142\157\170\072\144\151\162\050\154" + "\164\162\051\072\156\157\164\050\072\154\141\163\164\055\143\150" + "\151\154\144\051\040\076\040\142\157\170\040\076\040\142\165\164" + "\164\157\156\056\143\157\155\142\157\054\040\056\154\151\156\153" + "\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154" + "\051\040\076\040\143\157\155\142\157\142\157\170\072\144\151\162" + "\050\162\164\154\051\072\156\157\164\050\072\146\151\162\163\164" + "\055\143\150\151\154\144\051\040\076\040\142\157\170\040\076\040" + "\142\165\164\164\157\156\056\143\157\155\142\157\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\162\151\147\150\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151" + "\156\153\145\144\056\166\145\162\164\151\143\141\154\040\143\157" + "\155\142\157\142\157\170\072\156\157\164\050\072\146\151\162\163" + "\164\055\143\150\151\154\144\051\040\076\040\142\157\170\040\076" + "\040\142\165\164\164\157\156\056\143\157\155\142\157\040\173\040" + "\142\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145" + "\162\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\155\141\162\147\151\156\055\164\157" + "\160\072\040\055\061\160\170\073\040\175\012\012\056\154\151\156" + "\153\145\144\056\166\145\162\164\151\143\141\154\040\143\157\155" + "\142\157\142\157\170\072\156\157\164\050\072\154\141\163\164\055" + "\143\150\151\154\144\051\040\076\040\142\157\170\040\076\040\142" + "\165\164\164\157\156\056\143\157\155\142\157\040\173\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\175\012\012\056\154" + "\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151" + "\143\141\154\051\040\076\040\141\160\160\143\150\157\157\163\145" + "\162\142\165\164\164\157\156\072\144\151\162\050\154\164\162\051" + "\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151\154" + "\144\051\040\076\040\143\157\155\142\157\142\157\170\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\056\143\157\155" + "\142\157\054\040\056\154\151\156\153\145\144\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\076\040\141\160\160" + "\143\150\157\157\163\145\162\142\165\164\164\157\156\072\144\151" + "\162\050\162\164\154\051\072\156\157\164\050\072\154\141\163\164" + "\055\143\150\151\154\144\051\040\076\040\143\157\155\142\157\142" + "\157\170\040\076\040\142\157\170\040\076\040\142\165\164\164\157" + "\156\056\143\157\155\142\157\040\173\040\142\157\162\144\145\162" + "\055\164\157\160\055\154\145\146\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\154\145\146\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\155\141\162\147\151\156\055\154\145\146\164\072\040" + "\055\061\160\170\073\040\175\012\012\056\154\151\156\153\145\144" + "\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040" + "\076\040\141\160\160\143\150\157\157\163\145\162\142\165\164\164" + "\157\156\072\144\151\162\050\154\164\162\051\072\156\157\164\050" + "\072\154\141\163\164\055\143\150\151\154\144\051\040\076\040\143" + "\157\155\142\157\142\157\170\040\076\040\142\157\170\040\076\040" + "\142\165\164\164\157\156\056\143\157\155\142\157\054\040\056\154" + "\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151" + "\143\141\154\051\040\076\040\141\160\160\143\150\157\157\163\145" + "\162\142\165\164\164\157\156\072\144\151\162\050\162\164\154\051" + "\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151\154" + "\144\051\040\076\040\143\157\155\142\157\142\157\170\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\056\143\157\155" + "\142\157\040\173\040\142\157\162\144\145\162\055\164\157\160\055" + "\162\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\162" + "\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\175\012\012\056\154\151\156\153\145\144\056\166\145\162\164\151" + "\143\141\154\040\141\160\160\143\150\157\157\163\145\162\142\165" + "\164\164\157\156\072\156\157\164\050\072\146\151\162\163\164\055" + "\143\150\151\154\144\051\040\076\040\143\157\155\142\157\142\157" + "\170\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156" + "\056\143\157\155\142\157\040\173\040\142\157\162\144\145\162\055" + "\164\157\160\055\154\145\146\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\142\157\162\144\145\162\055\164\157\160\055\162" + "\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\155\141\162\147\151\156\055\164\157\160\072\040\055\061\160\170" + "\073\040\175\012\012\056\154\151\156\153\145\144\056\166\145\162" + "\164\151\143\141\154\040\141\160\160\143\150\157\157\163\145\162" + "\142\165\164\164\157\156\072\156\157\164\050\072\154\141\163\164" + "\055\143\150\151\154\144\051\040\076\040\143\157\155\142\157\142" + "\157\170\040\076\040\142\157\170\040\076\040\142\165\164\164\157" + "\156\056\143\157\155\142\157\040\173\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055\142" + "\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\175\012\012\154\151\156\153\054\040" + "\142\165\164\164\157\156\056\154\151\156\153\040\173\040\143\157" + "\154\157\162\072\040\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\073\040\164\145\170\164\055\144\145\143\157\162\141\164" + "\151\157\156\072\040\165\156\144\145\162\154\151\156\145\073\040" + "\146\157\156\164\055\167\145\151\147\150\164\072\040\151\156\150" + "\145\162\151\164\073\040\175\012\012\154\151\156\153\072\166\151" + "\163\151\164\145\144\054\040\142\165\164\164\157\156\056\154\151" + "\156\153\072\166\151\163\151\164\145\144\040\173\040\143\157\154" + "\157\162\072\040\155\151\170\050\100\141\143\143\145\156\164\137" + "\143\157\154\157\162\054\100\166\151\145\167\137\146\147\137\143" + "\157\154\157\162\054\060\056\062\051\073\040\175\012\012\154\151" + "\156\153\072\150\157\166\145\162\054\040\142\165\164\164\157\156" + "\056\154\151\156\153\072\150\157\166\145\162\040\173\040\143\157" + "\154\157\162\072\040\163\150\141\144\145\050\100\141\143\143\145" + "\156\164\137\143\157\154\157\162\054\061\056\061\051\073\040\175" + "\012\012\154\151\156\153\072\141\143\164\151\166\145\054\040\142" + "\165\164\164\157\156\056\154\151\156\153\072\141\143\164\151\166" + "\145\040\173\040\143\157\154\157\162\072\040\100\141\143\143\145" + "\156\164\137\143\157\154\157\162\073\040\175\012\012\154\151\156" + "\153\072\144\151\163\141\142\154\145\144\054\040\142\165\164\164" + "\157\156\056\154\151\156\153\072\144\151\163\141\142\154\145\144" + "\040\173\040\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\064" + "\051\073\040\175\012\012\056\157\163\144\040\154\151\156\153\054" + "\040\056\157\163\144\040\142\165\164\164\157\156\056\154\151\156" + "\153\040\173\040\143\157\154\157\162\072\040\155\151\170\050\100" + "\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162\054" + "\167\150\151\164\145\054\060\056\065\051\073\040\175\012\012\056" + "\157\163\144\040\154\151\156\153\072\166\151\163\151\164\145\144" + "\054\040\056\157\163\144\040\142\165\164\164\157\156\056\154\151" + "\156\153\072\166\151\163\151\164\145\144\040\173\040\143\157\154" + "\157\162\072\040\155\151\170\050\100\141\143\143\145\156\164\137" + "\142\147\137\143\157\154\157\162\054\167\150\151\164\145\054\060" + "\056\062\065\051\073\040\175\012\012\056\157\163\144\040\154\151" + "\156\153\072\141\143\164\151\166\145\054\040\056\157\163\144\040" + "\142\165\164\164\157\156\056\154\151\156\153\072\141\143\164\151" + "\166\145\040\173\040\143\157\154\157\162\072\040\155\151\170\050" + "\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162" + "\054\167\150\151\164\145\054\060\056\065\051\073\040\175\012\012" + "\154\151\156\153\040\173\040\157\165\164\154\151\156\145\072\040" + "\060\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\072\040\064\160\170\073\040\164\162\141\156\163\151" + "\164\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040" + "\157\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\073\040\175\012\012\154\151\156\153\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164\137" + "\143\157\154\157\162\054\060\056\070\051\073\040\157\165\164\154" + "\151\156\145\055\167\151\144\164\150\072\040\062\160\170\073\040" + "\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040" + "\055\062\160\170\073\040\175\012\012\056\157\163\144\040\154\151" + "\156\153\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\162\147\142\141\050\062\065\065" + "\054\040\062\065\065\054\040\062\065\065\054\040\060\056\065\051" + "\073\040\175\012\012\142\165\164\164\157\156\056\154\151\156\153" + "\040\076\040\154\141\142\145\154\040\173\040\164\145\170\164\055" + "\144\145\143\157\162\141\164\151\157\156\072\040\165\156\144\145" + "\162\154\151\156\145\073\040\175\012\012\154\151\163\164\166\151" + "\145\167\054\040\154\151\163\164\040\173\040\143\157\154\157\162" + "\072\040\100\166\151\145\167\137\146\147\137\143\157\154\157\162" + "\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\100\166\151\145\167\137\142\147\137\143\157\154" + "\157\162\073\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\154\151\160\072\040\160\141\144\144\151\156\147\055\142\157\170" + "\073\040\142\157\162\144\145\162\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\065\051\073\040\175\012\012\154\151\163\164" + "\166\151\145\167\040\076\040\162\157\167\054\040\154\151\163\164" + "\040\076\040\162\157\167\040\173\040\160\141\144\144\151\156\147" + "\072\040\062\160\170\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\154\151\160\072\040\160\141\144\144\151\156\147\055" + "\142\157\170\073\040\175\012\012\154\151\163\164\166\151\145\167" + "\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162\054" + "\040\154\151\163\164\040\076\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\040\173\040\160\141\144\144\151\156\147\072\040" + "\060\160\170\073\040\175\012\012\154\151\163\164\166\151\145\167" + "\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162\040" + "\056\162\157\167\055\150\145\141\144\145\162\054\040\154\151\163" + "\164\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\040\056\162\157\167\055\150\145\141\144\145\162\040\173\040\160" + "\141\144\144\151\156\147\072\040\062\160\170\073\040\175\012\012" + "\154\151\163\164\166\151\145\167\056\150\157\162\151\172\157\156" + "\164\141\154\040\162\157\167\056\163\145\160\141\162\141\164\157" + "\162\054\040\154\151\163\164\166\151\145\167\056\163\145\160\141" + "\162\141\164\157\162\163\056\150\157\162\151\172\157\156\164\141" + "\154\040\076\040\162\157\167\072\156\157\164\050\056\163\145\160" + "\141\162\141\164\157\162\051\054\040\154\151\163\164\056\150\157" + "\162\151\172\157\156\164\141\154\040\162\157\167\056\163\145\160" + "\141\162\141\164\157\162\054\040\154\151\163\164\056\163\145\160" + "\141\162\141\164\157\162\163\056\150\157\162\151\172\157\156\164" + "\141\154\040\076\040\162\157\167\072\156\157\164\050\056\163\145" + "\160\141\162\141\164\157\162\051\040\173\040\142\157\162\144\145" + "\162\055\154\145\146\164\072\040\061\160\170\040\163\157\154\151" + "\144\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\065\051\073\040\175\012\012\154\151" + "\163\164\166\151\145\167\072\156\157\164\050\056\150\157\162\151" + "\172\157\156\164\141\154\051\040\162\157\167\056\163\145\160\141" + "\162\141\164\157\162\054\040\154\151\163\164\166\151\145\167\056" + "\163\145\160\141\162\141\164\157\162\163\072\156\157\164\050\056" + "\150\157\162\151\172\157\156\164\141\154\051\040\076\040\162\157" + "\167\072\156\157\164\050\056\163\145\160\141\162\141\164\157\162" + "\051\054\040\154\151\163\164\072\156\157\164\050\056\150\157\162" + "\151\172\157\156\164\141\154\051\040\162\157\167\056\163\145\160" + "\141\162\141\164\157\162\054\040\154\151\163\164\056\163\145\160" + "\141\162\141\164\157\162\163\072\156\157\164\050\056\150\157\162" + "\151\172\157\156\164\141\154\051\040\076\040\162\157\167\072\156" + "\157\164\050\056\163\145\160\141\162\141\164\157\162\051\040\173" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\072\040" + "\061\160\170\040\163\157\154\151\144\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065" + "\051\073\040\175\012\012\154\151\163\164\166\151\145\167\040\076" + "\040\150\145\141\144\145\162\040\173\040\160\141\144\144\151\156" + "\147\072\040\062\160\170\073\040\160\141\144\144\151\156\147\055" + "\164\157\160\072\040\061\070\160\170\073\040\160\141\144\144\151" + "\156\147\055\142\157\164\164\157\155\072\040\066\160\170\073\040" + "\175\012\012\162\157\167\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\154\151\160\072\040\160\141\144\144\151\156" + "\147\055\142\157\170\073\040\175\012\012\162\157\167\040\173\040" + "\157\165\164\154\151\156\145\072\040\060\040\163\157\154\151\144" + "\040\164\162\141\156\163\160\141\162\145\156\164\073\040\157\165" + "\164\154\151\156\145\055\157\146\146\163\145\164\072\040\064\160" + "\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040\157" + "\165\164\154\151\156\145\055\143\157\154\157\162\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175\012" + "\012\162\157\167\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\040\173\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\100\141\143\143\145\156\164\137\143\157\154\157\162\054\060\056" + "\070\051\073\040\157\165\164\154\151\156\145\055\167\151\144\164" + "\150\072\040\062\160\170\073\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\072\040\055\062\160\170\073\040\175\012" + "\012\056\157\163\144\040\162\157\167\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040\162" + "\147\142\141\050\062\065\065\054\040\062\065\065\054\040\062\065" + "\065\054\040\060\056\065\051\073\040\175\012\012\056\157\163\144" + "\040\162\157\167\056\141\143\164\151\166\141\164\141\142\154\145" + "\072\150\157\166\145\162\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\060\067\051\073\040\175\012\012\056\157\163\144\040\162\157\167" + "\056\141\143\164\151\166\141\164\141\142\154\145\072\141\143\164" + "\151\166\145\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\061\066\051" + "\073\040\175\012\012\056\157\163\144\040\162\157\167\056\141\143" + "\164\151\166\141\164\141\142\154\145\056\150\141\163\055\157\160" + "\145\156\055\160\157\160\165\160\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\060\067\051\073\040\175\012\012\056\157\163\144\040\162" + "\157\167\056\141\143\164\151\166\141\164\141\142\154\145\072\163" + "\145\154\145\143\164\145\144\072\150\157\166\145\162\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\061\063\051\073\040\175\012\012\056" + "\157\163\144\040\162\157\167\056\141\143\164\151\166\141\164\141" + "\142\154\145\072\163\145\154\145\143\164\145\144\072\141\143\164" + "\151\166\145\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\061\071\051" + "\073\040\175\012\012\056\157\163\144\040\162\157\167\056\141\143" + "\164\151\166\141\164\141\142\154\145\056\150\141\163\055\157\160" + "\145\156\055\160\157\160\165\160\072\163\145\154\145\143\164\145" + "\144\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\063\051\073\040" + "\175\012\012\056\157\163\144\040\162\157\167\072\163\145\154\145" + "\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061\051" + "\073\040\175\012\012\162\157\167\056\141\143\164\151\166\141\164" + "\141\142\154\145\072\150\157\166\145\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\060\064\051\073\040\175\012\012\162\157\167\056" + "\141\143\164\151\166\141\164\141\142\154\145\072\141\143\164\151" + "\166\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\060\070\051\073" + "\040\175\012\012\162\157\167\056\141\143\164\151\166\141\164\141" + "\142\154\145\056\150\141\163\055\157\160\145\156\055\160\157\160" + "\165\160\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\060\064\051\073" + "\040\175\012\012\162\157\167\056\141\143\164\151\166\141\164\141" + "\142\154\145\072\163\145\154\145\143\164\145\144\072\150\157\166" + "\145\162\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143" + "\143\145\156\164\137\142\147\137\143\157\154\157\162\054\060\056" + "\063\062\051\073\040\175\012\012\162\157\167\056\141\143\164\151" + "\166\141\164\141\142\154\145\072\163\145\154\145\143\164\145\144" + "\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\100\141\143\143\145\156\164\137\142\147\137\143\157\154" + "\157\162\054\060\056\063\071\051\073\040\175\012\012\162\157\167" + "\056\141\143\164\151\166\141\164\141\142\154\145\056\150\141\163" + "\055\157\160\145\156\055\160\157\160\165\160\072\163\145\154\145" + "\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100" + "\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162\054" + "\060\056\063\062\051\073\040\175\012\012\162\157\167\072\163\145" + "\154\145\143\164\145\144\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\054\060\056\062\065\051\073\040\175\012\012\057\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\040\122\151\143\150\040\114\151\163\164\163\040" + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040" + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040" + "\040\040\040\040\040\040\040\040\040\052\040\114\141\162\147\145" + "\040\154\151\163\164\040\165\163\165\141\154\154\171\040\143\157" + "\156\164\141\151\156\151\156\147\040\154\157\164\163\040\157\146" + "\040\167\151\144\147\145\164\163\040\040\040\040\040\040\040\052" + "\040\150\164\164\160\163\072\057\057\147\151\164\154\141\142\056" + "\147\156\157\155\145\056\157\162\147\057\107\116\117\115\105\057" + "\147\164\153\057\055\057\151\163\163\165\145\163\057\063\060\067" + "\063\040\040\040\040\052\040\052\057\012\056\162\151\143\150\055" + "\154\151\163\164\040\173\040\057\052\040\162\151\143\150\040\154" + "\151\163\164\163\040\165\163\165\141\154\154\171\040\143\157\156" + "\164\141\151\156\151\156\147\040\157\164\150\145\162\040\167\151" + "\144\147\145\164\163\040\164\150\141\156\040\152\165\163\164\040" + "\154\141\142\145\154\163\057\164\145\170\164\040\052\057\040\175" + "\012\012\056\162\151\143\150\055\154\151\163\164\040\076\040\162" + "\157\167\040\173\040\160\141\144\144\151\156\147\072\040\070\160" + "\170\040\061\062\160\170\073\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\063\062\160\170\073\040\057\052\040\163\150\157" + "\165\154\144\040\142\145\040\164\141\154\154\040\145\166\145\156" + "\040\167\150\145\156\040\157\156\154\171\040\143\157\156\164\141" + "\151\156\151\156\147\040\141\040\154\141\142\145\154\040\052\057" + "\040\175\012\012\056\162\151\143\150\055\154\151\163\164\040\076" + "\040\162\157\167\040\076\040\142\157\170\040\173\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\061\062\160" + "\170\073\040\175\012\012\056\162\151\143\150\055\154\151\163\164" + "\040\076\040\150\145\141\144\145\162\040\173\040\160\141\144\144" + "\151\156\147\055\154\145\146\164\072\040\061\062\160\170\073\040" + "\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040\061" + "\062\160\170\073\040\175\012\012\057\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\040\101\144\167\101\143\164" + "\151\157\156\122\157\167\040\052\040\052\057\012\162\157\167\040" + "\154\141\142\145\154\056\163\165\142\164\151\164\154\145\040\173" + "\040\146\157\156\164\055\163\151\172\145\072\040\163\155\141\154" + "\154\145\162\073\040\175\012\012\162\157\167\040\076\040\142\157" + "\170\056\150\145\141\144\145\162\040\173\040\155\141\162\147\151" + "\156\055\154\145\146\164\072\040\061\062\160\170\073\040\155\141" + "\162\147\151\156\055\162\151\147\150\164\072\040\061\062\160\170" + "\073\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\066\160\170\073\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\065\060\160\170\073\040\175\012\012\162\157\167\040" + "\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040\056" + "\151\143\157\156\072\144\151\163\141\142\154\145\144\040\173\040" + "\146\151\154\164\145\162\072\040\157\160\141\143\151\164\171\050" + "\060\056\064\051\073\040\175\012\012\162\157\167\040\076\040\142" + "\157\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056" + "\164\151\164\154\145\040\173\040\155\141\162\147\151\156\055\164" + "\157\160\072\040\066\160\170\073\040\155\141\162\147\151\156\055" + "\142\157\164\164\157\155\072\040\066\160\170\073\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\063\160\170" + "\073\040\160\141\144\144\151\156\147\072\040\060\073\040\175\012" + "\012\162\157\167\040\076\040\142\157\170\056\150\145\141\144\145" + "\162\040\076\040\142\157\170\056\164\151\164\154\145\054\040\162" + "\157\167\040\076\040\142\157\170\056\150\145\141\144\145\162\040" + "\076\040\142\157\170\056\164\151\164\154\145\040\076\040\056\164" + "\151\164\154\145\054\040\162\157\167\040\076\040\142\157\170\056" + "\150\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164" + "\154\145\040\076\040\056\163\165\142\164\151\164\154\145\040\173" + "\040\160\141\144\144\151\156\147\072\040\060\073\040\146\157\156" + "\164\055\167\145\151\147\150\164\072\040\151\156\150\145\162\151" + "\164\073\040\175\012\012\162\157\167\040\076\040\142\157\170\056" + "\150\145\141\144\145\162\040\076\040\056\160\162\145\146\151\170" + "\145\163\054\040\162\157\167\040\076\040\142\157\170\056\150\145" + "\141\144\145\162\040\076\040\056\163\165\146\146\151\170\145\163" + "\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156" + "\147\072\040\066\160\170\073\040\175\012\012\162\157\167\040\076" + "\040\142\157\170\056\150\145\141\144\145\162\040\076\040\056\151" + "\143\157\156\072\144\151\162\050\154\164\162\051\054\040\162\157" + "\167\040\076\040\142\157\170\056\150\145\141\144\145\162\040\076" + "\040\056\160\162\145\146\151\170\145\163\072\144\151\162\050\154" + "\164\162\051\040\173\040\155\141\162\147\151\156\055\162\151\147" + "\150\164\072\040\066\160\170\073\040\175\012\012\162\157\167\040" + "\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040\056" + "\151\143\157\156\072\144\151\162\050\162\164\154\051\054\040\162" + "\157\167\040\076\040\142\157\170\056\150\145\141\144\145\162\040" + "\076\040\056\160\162\145\146\151\170\145\163\072\144\151\162\050" + "\162\164\154\051\040\173\040\155\141\162\147\151\156\055\154\145" + "\146\164\072\040\066\160\170\073\040\175\012\012\162\157\167\056" + "\160\162\157\160\145\162\164\171\040\076\040\142\157\170\056\150" + "\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154" + "\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167\056" + "\145\170\160\141\156\144\145\162\056\160\162\157\160\145\162\164" + "\171\040\142\157\170\040\076\040\154\151\163\164\040\076\040\162" + "\157\167\040\076\040\142\157\170\056\150\145\141\144\145\162\040" + "\076\040\142\157\170\056\164\151\164\154\145\040\076\040\056\164" + "\151\164\154\145\040\173\040\146\157\156\164\055\163\151\172\145" + "\072\040\163\155\141\154\154\145\162\073\040\175\012\012\162\157" + "\167\056\160\162\157\160\145\162\164\171\040\076\040\142\157\170" + "\056\150\145\141\144\145\162\040\076\040\142\157\170\056\164\151" + "\164\154\145\040\076\040\056\163\165\142\164\151\164\154\145\054" + "\040\162\157\167\056\145\170\160\141\156\144\145\162\056\160\162" + "\157\160\145\162\164\171\040\142\157\170\040\076\040\154\151\163" + "\164\040\076\040\162\157\167\040\076\040\142\157\170\056\150\145" + "\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154\145" + "\040\076\040\056\163\165\142\164\151\164\154\145\040\173\040\146" + "\157\156\164\055\163\151\172\145\072\040\151\156\150\145\162\151" + "\164\073\040\157\160\141\143\151\164\171\072\040\061\073\040\175" + "\012\012\162\157\167\056\160\162\157\160\145\162\164\171\056\155" + "\157\156\157\163\160\141\143\145\054\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\056\160\162\157\160\145\162\164\171\040" + "\142\157\170\040\076\040\154\151\163\164\040\076\040\162\157\167" + "\056\155\157\156\157\163\160\141\143\145\040\173\040\146\157\156" + "\164\055\146\141\155\151\154\171\072\040\151\156\150\145\162\151" + "\164\073\040\175\012\012\162\157\167\056\160\162\157\160\145\162" + "\164\171\056\155\157\156\157\163\160\141\143\145\040\076\040\142" + "\157\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056" + "\164\151\164\154\145\040\076\040\056\163\165\142\164\151\164\154" + "\145\054\040\162\157\167\056\145\170\160\141\156\144\145\162\056" + "\160\162\157\160\145\162\164\171\040\142\157\170\040\076\040\154" + "\151\163\164\040\076\040\162\157\167\056\155\157\156\157\163\160" + "\141\143\145\040\076\040\142\157\170\056\150\145\141\144\145\162" + "\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040\056" + "\163\165\142\164\151\164\154\145\040\173\040\146\157\156\164\055" + "\146\141\155\151\154\171\072\040\155\157\156\157\163\160\141\143" + "\145\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\040\101\144\167\105\156\164\162\171\122\157" + "\167\040\141\156\144\040\101\144\167\123\160\151\156\122\157\167" + "\040\052\040\052\057\012\162\157\167\056\145\156\164\162\171\056" + "\141\143\164\151\166\141\164\141\142\154\145\056\146\157\143\165" + "\163\145\144\072\156\157\164\050\072\163\145\154\145\143\164\145" + "\144\051\072\150\157\166\145\162\054\040\162\157\167\056\145\156" + "\164\162\171\056\141\143\164\151\166\141\164\141\142\154\145\056" + "\146\157\143\165\163\145\144\072\156\157\164\050\072\163\145\154" + "\145\143\164\145\144\051\072\141\143\164\151\166\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040\175" + "\012\012\162\157\167\056\145\156\164\162\171\072\144\151\163\141" + "\142\154\145\144\040\164\145\170\164\040\173\040\157\160\141\143" + "\151\164\171\072\040\060\056\064\073\040\175\012\012\162\157\167" + "\056\145\156\164\162\171\072\144\151\163\141\142\154\145\144\040" + "\056\144\151\155\055\154\141\142\145\154\054\040\162\157\167\056" + "\145\156\164\162\171\072\144\151\163\141\142\154\145\144\040\163" + "\143\141\154\145\040\076\040\166\141\154\165\145\054\040\162\157" + "\167\056\145\156\164\162\171\072\144\151\163\141\142\154\145\144" + "\040\160\162\157\147\162\145\163\163\142\141\162\040\076\040\164" + "\145\170\164\054\040\162\157\167\056\145\156\164\162\171\072\144" + "\151\163\141\142\154\145\144\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\040\151\155\141\147\145\056\145\170\160\141\156" + "\144\145\162\055\162\157\167\055\141\162\162\157\167\054\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056" + "\145\156\164\162\171\072\144\151\163\141\142\154\145\144\040\151" + "\155\141\147\145\056\145\170\160\141\156\144\145\162\055\162\157" + "\167\055\141\162\162\157\167\054\040\162\157\167\056\145\156\164" + "\162\171\072\144\151\163\141\142\154\145\144\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\164\145\170\164\040\076\040" + "\160\154\141\143\145\150\157\154\144\145\162\054\040\162\157\167" + "\056\145\156\164\162\171\072\144\151\163\141\142\154\145\144\040" + "\145\156\164\162\171\040\076\040\164\145\170\164\040\076\040\160" + "\154\141\143\145\150\157\154\144\145\162\054\040\162\157\167\056" + "\145\156\164\162\171\072\144\151\163\141\142\154\145\144\040\154" + "\141\142\145\154\056\163\145\160\141\162\141\164\157\162\054\040" + "\162\157\167\056\145\156\164\162\171\072\144\151\163\141\142\154" + "\145\144\040\162\157\167\056\160\162\157\160\145\162\164\171\040" + "\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040\142" + "\157\170\056\164\151\164\154\145\040\076\040\056\164\151\164\154" + "\145\054\040\162\157\167\056\145\156\164\162\171\072\144\151\163" + "\141\142\154\145\144\040\162\157\167\056\145\170\160\141\156\144" + "\145\162\056\160\162\157\160\145\162\164\171\040\142\157\170\040" + "\076\040\154\151\163\164\040\076\040\162\157\167\040\076\040\142" + "\157\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056" + "\164\151\164\154\145\040\076\040\056\164\151\164\154\145\054\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\056\160\162\157" + "\160\145\162\164\171\040\162\157\167\056\145\156\164\162\171\072" + "\144\151\163\141\142\154\145\144\040\142\157\170\040\076\040\154" + "\151\163\164\040\076\040\162\157\167\040\076\040\142\157\170\056" + "\150\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164" + "\154\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167" + "\056\145\156\164\162\171\072\144\151\163\141\142\154\145\144\040" + "\056\163\165\142\164\151\164\154\145\040\173\040\157\160\141\143" + "\151\164\171\072\040\061\073\040\175\012\012\162\157\167\056\145" + "\156\164\162\171\040\056\145\144\151\164\055\151\143\157\156\054" + "\040\162\157\167\056\145\156\164\162\171\040\056\151\156\144\151" + "\143\141\164\157\162\040\173\040\155\151\156\055\167\151\144\164" + "\150\072\040\062\064\160\170\073\040\155\151\156\055\150\145\151" + "\147\150\164\072\040\062\064\160\170\073\040\160\141\144\144\151" + "\156\147\072\040\065\160\170\073\040\175\012\012\162\157\167\056" + "\145\156\164\162\171\040\056\145\144\151\164\055\151\143\157\156" + "\072\144\151\163\141\142\154\145\144\040\173\040\157\160\141\143" + "\151\164\171\072\040\060\056\063\073\040\175\012\012\162\157\167" + "\056\145\156\164\162\171\040\056\151\156\144\151\143\141\164\157" + "\162\040\173\040\157\160\141\143\151\164\171\072\040\060\056\070" + "\073\040\175\012\012\162\157\167\056\145\156\164\162\171\056\155" + "\157\156\157\163\160\141\143\145\040\173\040\146\157\156\164\055" + "\146\141\155\151\154\171\072\040\151\156\150\145\162\151\164\073" + "\040\175\012\012\162\157\167\056\145\156\164\162\171\056\155\157" + "\156\157\163\160\141\143\145\040\164\145\170\164\040\173\040\146" + "\157\156\164\055\146\141\155\151\154\171\072\040\155\157\156\157" + "\163\160\141\143\145\073\040\175\012\012\162\157\167\056\163\160" + "\151\156\056\141\143\164\151\166\141\164\141\142\154\145\056\146" + "\157\143\165\163\145\144\072\156\157\164\050\072\163\145\154\145" + "\143\164\145\144\051\072\150\157\166\145\162\054\040\162\157\167" + "\056\163\160\151\156\056\141\143\164\151\166\141\164\141\142\154" + "\145\056\146\157\143\165\163\145\144\072\156\157\164\050\072\163" + "\145\154\145\143\164\145\144\051\072\141\143\164\151\166\145\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\175\012\012\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\156\157\156\145\073\040\142\157\162\144" + "\145\162\055\163\160\141\143\151\156\147\072\040\066\160\170\073" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\156\157\156" + "\145\073\040\175\012\012\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\072\146" + "\157\143\165\163\040\173\040\157\165\164\154\151\156\145\072\040" + "\156\157\156\145\073\040\175\012\012\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\154\164\162\051\072\154\141\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\072\144\151\162\050\162\164\154\051\072\146" + "\151\162\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\040\173\040\155\151\156\055\167\151\144\164\150\072\040" + "\063\060\160\170\073\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\063\060\160\170\073\040\155\141\162\147\151\156\072\040" + "\061\060\160\170\040\062\160\170\073\040\142\157\162\144\145\162" + "\072\040\156\157\156\145\073\040\175\012\012\162\157\167\056\163" + "\160\151\156\072\144\151\163\141\142\154\145\144\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\163\141\142\154\145\144\054\040\162\157\167\056\163" + "\160\151\156\072\144\151\163\141\142\154\145\144\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143" + "\150\151\154\144\072\144\151\163\141\142\154\145\144\054\040\162" + "\157\167\056\163\160\151\156\072\144\151\163\141\142\154\145\144" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\072\144\151\163\141\142\154" + "\145\144\054\040\162\157\167\056\163\160\151\156\072\144\151\163" + "\141\142\154\145\144\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\163\141\142\154\145\144\054\040\162\157\167\056\163" + "\160\151\156\072\144\151\163\141\142\154\145\144\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157" + "\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051" + "\072\154\141\163\164\055\143\150\151\154\144\072\144\151\163\141" + "\142\154\145\144\054\040\162\157\167\056\163\160\151\156\072\144" + "\151\163\141\142\154\145\144\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\144\151\162\050\162\164\154\051\072\146\151\162\163" + "\164\055\143\150\151\154\144\072\144\151\163\141\142\154\145\144" + "\040\173\040\146\151\154\164\145\162\072\040\156\157\156\145\073" + "\040\175\012\012\162\157\167\056\145\156\164\162\171\054\040\162" + "\157\167\056\163\160\151\156\040\173\040\157\165\164\154\151\156" + "\145\072\040\060\040\163\157\154\151\144\040\164\162\141\156\163" + "\160\141\162\145\156\164\073\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\072\040\065\160\170\073\040\164\162\141" + "\156\163\151\164\151\157\156\072\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\157\165\164\154\151\156\145\055\167\151\144\164\150" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175" + "\012\012\162\157\167\056\145\156\164\162\171\056\146\157\143\165" + "\163\145\144\054\040\162\157\167\056\163\160\151\156\056\146\157" + "\143\165\163\145\144\040\173\040\157\165\164\154\151\156\145\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143" + "\143\145\156\164\137\143\157\154\157\162\054\060\056\070\051\073" + "\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072\040" + "\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\072\040\055\061\160\170\073\040\175\012\012\162\157" + "\167\056\145\156\164\162\171\056\141\143\164\151\166\141\164\141" + "\142\154\145\056\146\157\143\165\163\145\144\072\156\157\164\050" + "\072\163\145\154\145\143\164\145\144\051\072\150\157\166\145\162" + "\054\040\162\157\167\056\145\156\164\162\171\056\141\143\164\151" + "\166\141\164\141\142\154\145\056\146\157\143\165\163\145\144\072" + "\156\157\164\050\072\163\145\154\145\143\164\145\144\051\072\141" + "\143\164\151\166\145\054\040\162\157\167\056\163\160\151\156\056" + "\141\143\164\151\166\141\164\141\142\154\145\056\146\157\143\165" + "\163\145\144\072\156\157\164\050\072\163\145\154\145\143\164\145" + "\144\051\072\150\157\166\145\162\054\040\162\157\167\056\163\160" + "\151\156\056\141\143\164\151\166\141\164\141\142\154\145\056\146" + "\157\143\165\163\145\144\072\156\157\164\050\072\163\145\154\145" + "\143\164\145\144\051\072\141\143\164\151\166\145\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\164\162\141\156\163\160\141\162\145\156\164\073\040\175\012" + "\012\162\157\167\056\145\156\164\162\171\056\145\162\162\157\162" + "\054\040\162\157\167\056\163\160\151\156\056\145\162\162\157\162" + "\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163\157" + "\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\065\160\170\073\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154" + "\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\142\157" + "\162\144\145\162\055\162\141\144\151\165\163\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\073\040\175\012\012\162\157\167\056\145" + "\156\164\162\171\056\145\162\162\157\162\056\146\157\143\165\163" + "\145\144\054\040\162\157\167\056\163\160\151\156\056\145\162\162" + "\157\162\056\146\157\143\165\163\145\144\040\173\040\157\165\164" + "\154\151\156\145\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\070\051\073\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\072\040\062\160\170\073\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\072\040\055\061\160\170\073\040\175" + "\012\012\162\157\167\056\145\156\164\162\171\056\145\162\162\157" + "\162\040\164\145\170\164\040\076\040\163\145\154\145\143\164\151" + "\157\156\072\146\157\143\165\163\055\167\151\164\150\151\156\054" + "\040\162\157\167\056\163\160\151\156\056\145\162\162\157\162\040" + "\164\145\170\164\040\076\040\163\145\154\145\143\164\151\157\156" + "\072\146\157\143\165\163\055\167\151\164\150\151\156\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\100\145\162\162\157\162\137\143" + "\157\154\157\162\054\060\056\062\051\073\040\175\012\012\162\157" + "\167\056\145\156\164\162\171\056\145\162\162\157\162\040\164\145" + "\170\164\040\076\040\143\165\162\163\157\162\055\150\141\156\144" + "\154\145\040\076\040\143\157\156\164\145\156\164\163\054\040\162" + "\157\167\056\163\160\151\156\056\145\162\162\157\162\040\164\145" + "\170\164\040\076\040\143\165\162\163\157\162\055\150\141\156\144" + "\154\145\040\076\040\143\157\156\164\145\156\164\163\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\143\165\162\162\145\156\164\103\157\154\157\162\073\040" + "\175\012\012\162\157\167\056\145\156\164\162\171\056\145\162\162" + "\157\162\040\056\144\151\155\055\154\141\142\145\154\054\040\162" + "\157\167\056\145\156\164\162\171\056\145\162\162\157\162\040\163" + "\143\141\154\145\040\076\040\166\141\154\165\145\054\040\162\157" + "\167\056\145\156\164\162\171\056\145\162\162\157\162\040\160\162" + "\157\147\162\145\163\163\142\141\162\040\076\040\164\145\170\164" + "\054\040\162\157\167\056\145\156\164\162\171\056\145\162\162\157" + "\162\040\162\157\167\056\145\170\160\141\156\144\145\162\040\151" + "\155\141\147\145\056\145\170\160\141\156\144\145\162\055\162\157" + "\167\055\141\162\162\157\167\054\040\162\157\167\056\145\170\160" + "\141\156\144\145\162\040\162\157\167\056\145\156\164\162\171\056" + "\145\162\162\157\162\040\151\155\141\147\145\056\145\170\160\141" + "\156\144\145\162\055\162\157\167\055\141\162\162\157\167\054\040" + "\162\157\167\056\145\156\164\162\171\056\145\162\162\157\162\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\164\145\170" + "\164\040\076\040\160\154\141\143\145\150\157\154\144\145\162\054" + "\040\162\157\167\056\145\156\164\162\171\056\145\162\162\157\162" + "\040\145\156\164\162\171\040\076\040\164\145\170\164\040\076\040" + "\160\154\141\143\145\150\157\154\144\145\162\054\040\162\157\167" + "\056\145\156\164\162\171\056\145\162\162\157\162\040\154\141\142" + "\145\154\056\163\145\160\141\162\141\164\157\162\054\040\162\157" + "\167\056\145\156\164\162\171\056\145\162\162\157\162\040\162\157" + "\167\056\160\162\157\160\145\162\164\171\040\076\040\142\157\170" + "\056\150\145\141\144\145\162\040\076\040\142\157\170\056\164\151" + "\164\154\145\040\076\040\056\164\151\164\154\145\054\040\162\157" + "\167\056\145\156\164\162\171\056\145\162\162\157\162\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\056\160\162\157\160\145" + "\162\164\171\040\142\157\170\040\076\040\154\151\163\164\040\076" + "\040\162\157\167\040\076\040\142\157\170\056\150\145\141\144\145" + "\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040" + "\056\164\151\164\154\145\054\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\056\160\162\157\160\145\162\164\171\040\162\157" + "\167\056\145\156\164\162\171\056\145\162\162\157\162\040\142\157" + "\170\040\076\040\154\151\163\164\040\076\040\162\157\167\040\076" + "\040\142\157\170\056\150\145\141\144\145\162\040\076\040\142\157" + "\170\056\164\151\164\154\145\040\076\040\056\164\151\164\154\145" + "\054\040\162\157\167\056\145\156\164\162\171\056\145\162\162\157" + "\162\040\056\163\165\142\164\151\164\154\145\054\040\162\157\167" + "\056\163\160\151\156\056\145\162\162\157\162\040\056\144\151\155" + "\055\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156" + "\056\145\162\162\157\162\040\163\143\141\154\145\040\076\040\166" + "\141\154\165\145\054\040\162\157\167\056\163\160\151\156\056\145" + "\162\162\157\162\040\160\162\157\147\162\145\163\163\142\141\162" + "\040\076\040\164\145\170\164\054\040\162\157\167\056\163\160\151" + "\156\056\145\162\162\157\162\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\040\151\155\141\147\145\056\145\170\160\141\156" + "\144\145\162\055\162\157\167\055\141\162\162\157\167\054\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056" + "\163\160\151\156\056\145\162\162\157\162\040\151\155\141\147\145" + "\056\145\170\160\141\156\144\145\162\055\162\157\167\055\141\162" + "\162\157\167\054\040\162\157\167\056\163\160\151\156\056\145\162" + "\162\157\162\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\164\145\170\164\040\076\040\160\154\141\143\145\150\157\154" + "\144\145\162\054\040\162\157\167\056\163\160\151\156\056\145\162" + "\162\157\162\040\145\156\164\162\171\040\076\040\164\145\170\164" + "\040\076\040\160\154\141\143\145\150\157\154\144\145\162\054\040" + "\162\157\167\056\163\160\151\156\056\145\162\162\157\162\040\154" + "\141\142\145\154\056\163\145\160\141\162\141\164\157\162\054\040" + "\162\157\167\056\163\160\151\156\056\145\162\162\157\162\040\162" + "\157\167\056\160\162\157\160\145\162\164\171\040\076\040\142\157" + "\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056\164" + "\151\164\154\145\040\076\040\056\164\151\164\154\145\054\040\162" + "\157\167\056\163\160\151\156\056\145\162\162\157\162\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\056\160\162\157\160\145" + "\162\164\171\040\142\157\170\040\076\040\154\151\163\164\040\076" + "\040\162\157\167\040\076\040\142\157\170\056\150\145\141\144\145" + "\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040" + "\056\164\151\164\154\145\054\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\056\160\162\157\160\145\162\164\171\040\162\157" + "\167\056\163\160\151\156\056\145\162\162\157\162\040\142\157\170" + "\040\076\040\154\151\163\164\040\076\040\162\157\167\040\076\040" + "\142\157\170\056\150\145\141\144\145\162\040\076\040\142\157\170" + "\056\164\151\164\154\145\040\076\040\056\164\151\164\154\145\054" + "\040\162\157\167\056\163\160\151\156\056\145\162\162\157\162\040" + "\056\163\165\142\164\151\164\154\145\040\173\040\157\160\141\143" + "\151\164\171\072\040\061\073\040\175\012\012\162\157\167\056\145" + "\156\164\162\171\056\145\162\162\157\162\040\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\054\040\162\157" + "\167\056\163\160\151\156\056\145\162\162\157\162\040\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\100\145\162\162\157\162\137\142\147\137\143\157\154" + "\157\162\073\040\143\157\154\157\162\072\040\100\145\162\162\157" + "\162\137\146\147\137\143\157\154\157\162\073\040\175\012\012\162" + "\157\167\056\145\156\164\162\171\056\167\141\162\156\151\156\147" + "\054\040\162\157\167\056\163\160\151\156\056\167\141\162\156\151" + "\156\147\040\173\040\157\165\164\154\151\156\145\072\040\060\040" + "\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156" + "\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\065\160\170\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165" + "\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\162\157\167" + "\056\145\156\164\162\171\056\167\141\162\156\151\156\147\056\146" + "\157\143\165\163\145\144\054\040\162\157\167\056\163\160\151\156" + "\056\167\141\162\156\151\156\147\056\146\157\143\165\163\145\144" + "\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\070\051\073\040\157\165\164\154\151" + "\156\145\055\167\151\144\164\150\072\040\062\160\170\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\055" + "\061\160\170\073\040\175\012\012\162\157\167\056\145\156\164\162" + "\171\056\167\141\162\156\151\156\147\040\164\145\170\164\040\076" + "\040\163\145\154\145\143\164\151\157\156\072\146\157\143\165\163" + "\055\167\151\164\150\151\156\054\040\162\157\167\056\163\160\151" + "\156\056\167\141\162\156\151\156\147\040\164\145\170\164\040\076" + "\040\163\145\154\145\143\164\151\157\156\072\146\157\143\165\163" + "\055\167\151\164\150\151\156\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\100\167\141\162\156\151\156\147\137\143\157\154\157\162" + "\054\060\056\062\051\073\040\175\012\012\162\157\167\056\145\156" + "\164\162\171\056\167\141\162\156\151\156\147\040\164\145\170\164" + "\040\076\040\143\165\162\163\157\162\055\150\141\156\144\154\145" + "\040\076\040\143\157\156\164\145\156\164\163\054\040\162\157\167" + "\056\163\160\151\156\056\167\141\162\156\151\156\147\040\164\145" + "\170\164\040\076\040\143\165\162\163\157\162\055\150\141\156\144" + "\154\145\040\076\040\143\157\156\164\145\156\164\163\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\143\165\162\162\145\156\164\103\157\154\157\162\073\040" + "\175\012\012\162\157\167\056\145\156\164\162\171\056\167\141\162" + "\156\151\156\147\040\056\144\151\155\055\154\141\142\145\154\054" + "\040\162\157\167\056\145\156\164\162\171\056\167\141\162\156\151" + "\156\147\040\163\143\141\154\145\040\076\040\166\141\154\165\145" + "\054\040\162\157\167\056\145\156\164\162\171\056\167\141\162\156" + "\151\156\147\040\160\162\157\147\162\145\163\163\142\141\162\040" + "\076\040\164\145\170\164\054\040\162\157\167\056\145\156\164\162" + "\171\056\167\141\162\156\151\156\147\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\040\151\155\141\147\145\056\145\170\160" + "\141\156\144\145\162\055\162\157\167\055\141\162\162\157\167\054" + "\040\162\157\167\056\145\170\160\141\156\144\145\162\040\162\157" + "\167\056\145\156\164\162\171\056\167\141\162\156\151\156\147\040" + "\151\155\141\147\145\056\145\170\160\141\156\144\145\162\055\162" + "\157\167\055\141\162\162\157\167\054\040\162\157\167\056\145\156" + "\164\162\171\056\167\141\162\156\151\156\147\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\164\145\170\164\040\076\040" + "\160\154\141\143\145\150\157\154\144\145\162\054\040\162\157\167" + "\056\145\156\164\162\171\056\167\141\162\156\151\156\147\040\145" + "\156\164\162\171\040\076\040\164\145\170\164\040\076\040\160\154" + "\141\143\145\150\157\154\144\145\162\054\040\162\157\167\056\145" + "\156\164\162\171\056\167\141\162\156\151\156\147\040\154\141\142" + "\145\154\056\163\145\160\141\162\141\164\157\162\054\040\162\157" + "\167\056\145\156\164\162\171\056\167\141\162\156\151\156\147\040" + "\162\157\167\056\160\162\157\160\145\162\164\171\040\076\040\142" + "\157\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056" + "\164\151\164\154\145\040\076\040\056\164\151\164\154\145\054\040" + "\162\157\167\056\145\156\164\162\171\056\167\141\162\156\151\156" + "\147\040\162\157\167\056\145\170\160\141\156\144\145\162\056\160" + "\162\157\160\145\162\164\171\040\142\157\170\040\076\040\154\151" + "\163\164\040\076\040\162\157\167\040\076\040\142\157\170\056\150" + "\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154" + "\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167\056" + "\145\170\160\141\156\144\145\162\056\160\162\157\160\145\162\164" + "\171\040\162\157\167\056\145\156\164\162\171\056\167\141\162\156" + "\151\156\147\040\142\157\170\040\076\040\154\151\163\164\040\076" + "\040\162\157\167\040\076\040\142\157\170\056\150\145\141\144\145" + "\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040" + "\056\164\151\164\154\145\054\040\162\157\167\056\145\156\164\162" + "\171\056\167\141\162\156\151\156\147\040\056\163\165\142\164\151" + "\164\154\145\054\040\162\157\167\056\163\160\151\156\056\167\141" + "\162\156\151\156\147\040\056\144\151\155\055\154\141\142\145\154" + "\054\040\162\157\167\056\163\160\151\156\056\167\141\162\156\151" + "\156\147\040\163\143\141\154\145\040\076\040\166\141\154\165\145" + "\054\040\162\157\167\056\163\160\151\156\056\167\141\162\156\151" + "\156\147\040\160\162\157\147\162\145\163\163\142\141\162\040\076" + "\040\164\145\170\164\054\040\162\157\167\056\163\160\151\156\056" + "\167\141\162\156\151\156\147\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\040\151\155\141\147\145\056\145\170\160\141\156" + "\144\145\162\055\162\157\167\055\141\162\162\157\167\054\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056" + "\163\160\151\156\056\167\141\162\156\151\156\147\040\151\155\141" + "\147\145\056\145\170\160\141\156\144\145\162\055\162\157\167\055" + "\141\162\162\157\167\054\040\162\157\167\056\163\160\151\156\056" + "\167\141\162\156\151\156\147\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\164\145\170\164\040\076\040\160\154\141\143" + "\145\150\157\154\144\145\162\054\040\162\157\167\056\163\160\151" + "\156\056\167\141\162\156\151\156\147\040\145\156\164\162\171\040" + "\076\040\164\145\170\164\040\076\040\160\154\141\143\145\150\157" + "\154\144\145\162\054\040\162\157\167\056\163\160\151\156\056\167" + "\141\162\156\151\156\147\040\154\141\142\145\154\056\163\145\160" + "\141\162\141\164\157\162\054\040\162\157\167\056\163\160\151\156" + "\056\167\141\162\156\151\156\147\040\162\157\167\056\160\162\157" + "\160\145\162\164\171\040\076\040\142\157\170\056\150\145\141\144" + "\145\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076" + "\040\056\164\151\164\154\145\054\040\162\157\167\056\163\160\151" + "\156\056\167\141\162\156\151\156\147\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\056\160\162\157\160\145\162\164\171\040" + "\142\157\170\040\076\040\154\151\163\164\040\076\040\162\157\167" + "\040\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040" + "\142\157\170\056\164\151\164\154\145\040\076\040\056\164\151\164" + "\154\145\054\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\056\160\162\157\160\145\162\164\171\040\162\157\167\056\163\160" + "\151\156\056\167\141\162\156\151\156\147\040\142\157\170\040\076" + "\040\154\151\163\164\040\076\040\162\157\167\040\076\040\142\157" + "\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056\164" + "\151\164\154\145\040\076\040\056\164\151\164\154\145\054\040\162" + "\157\167\056\163\160\151\156\056\167\141\162\156\151\156\147\040" + "\056\163\165\142\164\151\164\154\145\040\173\040\157\160\141\143" + "\151\164\171\072\040\061\073\040\175\012\012\162\157\167\056\145" + "\156\164\162\171\056\167\141\162\156\151\156\147\040\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\054\040" + "\162\157\167\056\163\160\151\156\056\167\141\162\156\151\156\147" + "\040\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\100\167\141\162\156\151\156\147\137" + "\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162\072" + "\040\100\167\141\162\156\151\156\147\137\146\147\137\143\157\154" + "\157\162\073\040\175\012\012\162\157\167\056\145\156\164\162\171" + "\056\163\165\143\143\145\163\163\054\040\162\157\167\056\163\160" + "\151\156\056\163\165\143\143\145\163\163\040\173\040\157\165\164" + "\154\151\156\145\072\040\060\040\163\157\154\151\144\040\164\162" + "\141\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151" + "\156\145\055\157\146\146\163\145\164\072\040\065\160\170\073\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\157\165\164\154" + "\151\156\145\055\143\157\154\157\162\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\054\040\157\165\164\154\151\156\145\055\167\151" + "\144\164\150\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040" + "\157\165\164\154\151\156\145\055\157\146\146\163\145\164\040\062" + "\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145" + "\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056" + "\064\065\054\040\060\056\071\064\051\054\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\073\040\175\012\012\162\157\167\056\145\156\164\162\171\056\163" + "\165\143\143\145\163\163\056\146\157\143\165\163\145\144\054\040" + "\162\157\167\056\163\160\151\156\056\163\165\143\143\145\163\163" + "\056\146\157\143\165\163\145\144\040\173\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\070" + "\051\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150" + "\072\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\072\040\055\061\160\170\073\040\175\012\012" + "\162\157\167\056\145\156\164\162\171\056\163\165\143\143\145\163" + "\163\040\164\145\170\164\040\076\040\163\145\154\145\143\164\151" + "\157\156\072\146\157\143\165\163\055\167\151\164\150\151\156\054" + "\040\162\157\167\056\163\160\151\156\056\163\165\143\143\145\163" + "\163\040\164\145\170\164\040\076\040\163\145\154\145\143\164\151" + "\157\156\072\146\157\143\165\163\055\167\151\164\150\151\156\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\100\163\165\143\143\145" + "\163\163\137\143\157\154\157\162\054\060\056\062\051\073\040\175" + "\012\012\162\157\167\056\145\156\164\162\171\056\163\165\143\143" + "\145\163\163\040\164\145\170\164\040\076\040\143\165\162\163\157" + "\162\055\150\141\156\144\154\145\040\076\040\143\157\156\164\145" + "\156\164\163\054\040\162\157\167\056\163\160\151\156\056\163\165" + "\143\143\145\163\163\040\164\145\170\164\040\076\040\143\165\162" + "\163\157\162\055\150\141\156\144\154\145\040\076\040\143\157\156" + "\164\145\156\164\163\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\143\165\162\162\145\156" + "\164\103\157\154\157\162\073\040\175\012\012\162\157\167\056\145" + "\156\164\162\171\056\163\165\143\143\145\163\163\040\056\144\151" + "\155\055\154\141\142\145\154\054\040\162\157\167\056\145\156\164" + "\162\171\056\163\165\143\143\145\163\163\040\163\143\141\154\145" + "\040\076\040\166\141\154\165\145\054\040\162\157\167\056\145\156" + "\164\162\171\056\163\165\143\143\145\163\163\040\160\162\157\147" + "\162\145\163\163\142\141\162\040\076\040\164\145\170\164\054\040" + "\162\157\167\056\145\156\164\162\171\056\163\165\143\143\145\163" + "\163\040\162\157\167\056\145\170\160\141\156\144\145\162\040\151" + "\155\141\147\145\056\145\170\160\141\156\144\145\162\055\162\157" + "\167\055\141\162\162\157\167\054\040\162\157\167\056\145\170\160" + "\141\156\144\145\162\040\162\157\167\056\145\156\164\162\171\056" + "\163\165\143\143\145\163\163\040\151\155\141\147\145\056\145\170" + "\160\141\156\144\145\162\055\162\157\167\055\141\162\162\157\167" + "\054\040\162\157\167\056\145\156\164\162\171\056\163\165\143\143" + "\145\163\163\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\164\145\170\164\040\076\040\160\154\141\143\145\150\157\154" + "\144\145\162\054\040\162\157\167\056\145\156\164\162\171\056\163" + "\165\143\143\145\163\163\040\145\156\164\162\171\040\076\040\164" + "\145\170\164\040\076\040\160\154\141\143\145\150\157\154\144\145" + "\162\054\040\162\157\167\056\145\156\164\162\171\056\163\165\143" + "\143\145\163\163\040\154\141\142\145\154\056\163\145\160\141\162" + "\141\164\157\162\054\040\162\157\167\056\145\156\164\162\171\056" + "\163\165\143\143\145\163\163\040\162\157\167\056\160\162\157\160" + "\145\162\164\171\040\076\040\142\157\170\056\150\145\141\144\145" + "\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040" + "\056\164\151\164\154\145\054\040\162\157\167\056\145\156\164\162" + "\171\056\163\165\143\143\145\163\163\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\056\160\162\157\160\145\162\164\171\040" + "\142\157\170\040\076\040\154\151\163\164\040\076\040\162\157\167" + "\040\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040" + "\142\157\170\056\164\151\164\154\145\040\076\040\056\164\151\164" + "\154\145\054\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\056\160\162\157\160\145\162\164\171\040\162\157\167\056\145\156" + "\164\162\171\056\163\165\143\143\145\163\163\040\142\157\170\040" + "\076\040\154\151\163\164\040\076\040\162\157\167\040\076\040\142" + "\157\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056" + "\164\151\164\154\145\040\076\040\056\164\151\164\154\145\054\040" + "\162\157\167\056\145\156\164\162\171\056\163\165\143\143\145\163" + "\163\040\056\163\165\142\164\151\164\154\145\054\040\162\157\167" + "\056\163\160\151\156\056\163\165\143\143\145\163\163\040\056\144" + "\151\155\055\154\141\142\145\154\054\040\162\157\167\056\163\160" + "\151\156\056\163\165\143\143\145\163\163\040\163\143\141\154\145" + "\040\076\040\166\141\154\165\145\054\040\162\157\167\056\163\160" + "\151\156\056\163\165\143\143\145\163\163\040\160\162\157\147\162" + "\145\163\163\142\141\162\040\076\040\164\145\170\164\054\040\162" + "\157\167\056\163\160\151\156\056\163\165\143\143\145\163\163\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\040\151\155\141" + "\147\145\056\145\170\160\141\156\144\145\162\055\162\157\167\055" + "\141\162\162\157\167\054\040\162\157\167\056\145\170\160\141\156" + "\144\145\162\040\162\157\167\056\163\160\151\156\056\163\165\143" + "\143\145\163\163\040\151\155\141\147\145\056\145\170\160\141\156" + "\144\145\162\055\162\157\167\055\141\162\162\157\167\054\040\162" + "\157\167\056\163\160\151\156\056\163\165\143\143\145\163\163\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\164\145\170" + "\164\040\076\040\160\154\141\143\145\150\157\154\144\145\162\054" + "\040\162\157\167\056\163\160\151\156\056\163\165\143\143\145\163" + "\163\040\145\156\164\162\171\040\076\040\164\145\170\164\040\076" + "\040\160\154\141\143\145\150\157\154\144\145\162\054\040\162\157" + "\167\056\163\160\151\156\056\163\165\143\143\145\163\163\040\154" + "\141\142\145\154\056\163\145\160\141\162\141\164\157\162\054\040" + "\162\157\167\056\163\160\151\156\056\163\165\143\143\145\163\163" + "\040\162\157\167\056\160\162\157\160\145\162\164\171\040\076\040" + "\142\157\170\056\150\145\141\144\145\162\040\076\040\142\157\170" + "\056\164\151\164\154\145\040\076\040\056\164\151\164\154\145\054" + "\040\162\157\167\056\163\160\151\156\056\163\165\143\143\145\163" + "\163\040\162\157\167\056\145\170\160\141\156\144\145\162\056\160" + "\162\157\160\145\162\164\171\040\142\157\170\040\076\040\154\151" + "\163\164\040\076\040\162\157\167\040\076\040\142\157\170\056\150" + "\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154" + "\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167\056" + "\145\170\160\141\156\144\145\162\056\160\162\157\160\145\162\164" + "\171\040\162\157\167\056\163\160\151\156\056\163\165\143\143\145" + "\163\163\040\142\157\170\040\076\040\154\151\163\164\040\076\040" + "\162\157\167\040\076\040\142\157\170\056\150\145\141\144\145\162" + "\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040\056" + "\164\151\164\154\145\054\040\162\157\167\056\163\160\151\156\056" + "\163\165\143\143\145\163\163\040\056\163\165\142\164\151\164\154" + "\145\040\173\040\157\160\141\143\151\164\171\072\040\061\073\040" + "\175\012\012\162\157\167\056\145\156\164\162\171\056\163\165\143" + "\143\145\163\163\040\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\054\040\162\157\167\056\163\160\151\156" + "\056\163\165\143\143\145\163\163\040\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\163\165\143\143\145\163\163\137\142\147\137\143\157\154\157\162" + "\073\040\143\157\154\157\162\072\040\100\163\165\143\143\145\163" + "\163\137\146\147\137\143\157\154\157\162\073\040\175\012\012\057" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040" + "\101\144\167\103\157\155\142\157\122\157\167\040\052\040\052\057" + "\012\162\157\167\056\143\157\155\142\157\040\151\155\141\147\145" + "\056\144\162\157\160\144\157\167\156\055\141\162\162\157\167\072" + "\144\151\163\141\142\154\145\144\040\173\040\146\151\154\164\145" + "\162\072\040\157\160\141\143\151\164\171\050\060\056\064\051\073" + "\040\175\012\012\162\157\167\056\143\157\155\142\157\040\154\151" + "\163\164\166\151\145\167\056\151\156\154\151\156\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145" + "\073\040\142\157\162\144\145\162\072\040\156\157\156\145\073\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\156\157\156\145" + "\073\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164" + "\073\040\175\012\012\162\157\167\056\143\157\155\142\157\040\154" + "\151\163\164\166\151\145\167\056\151\156\154\151\156\145\054\040" + "\162\157\167\056\143\157\155\142\157\040\154\151\163\164\166\151" + "\145\167\056\151\156\154\151\156\145\072\144\151\163\141\142\154" + "\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\156\157\156\145\073\040\143\157\154\157\162\072\040\151\156" + "\150\145\162\151\164\073\040\175\012\012\162\157\167\056\143\157" + "\155\142\157\040\160\157\160\157\166\145\162\040\076\040\143\157" + "\156\164\145\156\164\163\040\173\040\155\151\156\055\167\151\144" + "\164\150\072\040\061\062\060\160\170\073\040\175\012\012\162\157" + "\167\056\143\157\155\142\157\040\160\157\160\157\166\145\162\040" + "\076\040\143\157\156\164\145\156\164\163\040\056\143\157\155\142" + "\157\055\163\145\141\162\143\150\142\141\162\040\173\040\155\141" + "\162\147\151\156\072\040\066\160\170\073\040\175\012\012\162\157" + "\167\056\143\157\155\142\157\040\160\157\160\157\166\145\162\040" + "\076\040\143\157\156\164\145\156\164\163\040\056\143\157\155\142" + "\157\055\163\145\141\162\143\150\142\141\162\040\053\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\040\076\040\165" + "\156\144\145\162\163\150\157\157\164\056\164\157\160\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\060\040\061\160\170\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156" + "\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040" + "\142\157\164\164\157\155\054\040\141\154\160\150\141\050\100\160" + "\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\067\065\051\054\040\164\162\141\156\163\160" + "\141\162\145\156\164\040\064\160\170\051\073\040\175\012\012\057" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\040\101\144\167\105\170\160\141\156\144\145\162\122\157" + "\167\040\052\040\052\057\012\154\151\163\164\056\142\157\170\145" + "\144\055\154\151\163\164\040\076\040\162\157\167\054\040\154\151" + "\163\164\056\143\157\156\164\145\156\164\040\076\040\162\157\167" + "\054\040\154\151\163\164\056\142\157\170\145\144\055\154\151\163" + "\164\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\040\162\157\167\056\150\145\141\144\145\162\054\040\154\151\163" + "\164\056\143\157\156\164\145\156\164\040\076\040\162\157\167\056" + "\145\170\160\141\156\144\145\162\040\162\157\167\056\150\145\141" + "\144\145\162\054\040\162\157\167\056\145\170\160\141\156\144\145" + "\162\040\154\151\163\164\056\156\145\163\164\145\144\040\076\040" + "\162\157\167\040\173\040\142\157\162\144\145\162\055\142\157\164" + "\164\157\155\072\040\061\160\170\040\163\157\154\151\144\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\065\051\073\040\175\012\012\154\151\163\164\056" + "\142\157\170\145\144\055\154\151\163\164\040\076\040\162\157\167" + "\054\040\154\151\163\164\056\143\157\156\164\145\156\164\040\076" + "\040\162\157\167\054\040\154\151\163\164\056\142\157\170\145\144" + "\055\154\151\163\164\040\076\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\040\162\157\167\056\150\145\141\144\145\162\054" + "\040\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167" + "\056\150\145\141\144\145\162\054\040\162\157\167\056\145\170\160" + "\141\156\144\145\162\040\154\151\163\164\056\156\145\163\164\145" + "\144\040\076\040\162\157\167\040\173\040\157\165\164\154\151\156" + "\145\072\040\060\040\163\157\154\151\144\040\164\162\141\156\163" + "\160\141\162\145\156\164\073\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\072\040\065\160\170\073\040\164\162\141" + "\156\163\151\164\151\157\156\072\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\157\165\164\154\151\156\145\055\167\151\144\164\150" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175" + "\012\012\154\151\163\164\056\142\157\170\145\144\055\154\151\163" + "\164\040\076\040\162\157\167\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\154\151\163" + "\164\056\143\157\156\164\145\156\164\040\076\040\162\157\167\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\154\151\163\164\056\142\157\170\145\144\055" + "\154\151\163\164\040\076\040\162\157\167\056\145\170\160\141\156" + "\144\145\162\040\162\157\167\056\150\145\141\144\145\162\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\154\151\163\164\056\143\157\156\164\145\156\164" + "\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162\040" + "\162\157\167\056\150\145\141\144\145\162\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\040\154\151\163" + "\164\056\156\145\163\164\145\144\040\076\040\162\157\167\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\040\173\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156" + "\164\137\143\157\154\157\162\054\060\056\070\051\073\040\157\165" + "\164\154\151\156\145\055\167\151\144\164\150\072\040\062\160\170" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\055\061\160\170\073\040\175\012\012\056\157\163\144\040" + "\154\151\163\164\056\142\157\170\145\144\055\154\151\163\164\040" + "\076\040\162\157\167\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040" + "\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040\162" + "\157\167\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\056\157\163\144\040\154\151\163" + "\164\056\142\157\170\145\144\055\154\151\163\164\040\076\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056" + "\150\145\141\144\145\162\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\154\151\163\164" + "\056\142\157\170\145\144\055\154\151\163\164\040\076\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\040\056\157\163\144\040" + "\162\157\167\056\150\145\141\144\145\162\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\056\157\163\144\040\154\151\163\164\056\143\157\156\164\145\156" + "\164\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\040\162\157\167\056\150\145\141\144\145\162\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\040\056\157\163" + "\144\040\162\157\167\056\150\145\141\144\145\162\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\056\157\163\144\040\162\157\167\056\145\170\160\141\156" + "\144\145\162\040\154\151\163\164\056\156\145\163\164\145\144\040" + "\076\040\162\157\167\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\162\157\167\056\145" + "\170\160\141\156\144\145\162\040\056\157\163\144\040\154\151\163" + "\164\056\156\145\163\164\145\144\040\076\040\162\157\167\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\040\173\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\072\040\162\147\142\141\050\062\065\065\054\040\062\065" + "\065\054\040\062\065\065\054\040\060\056\065\051\073\040\175\012" + "\012\154\151\163\164\056\142\157\170\145\144\055\154\151\163\164" + "\040\076\040\162\157\167\056\141\143\164\151\166\141\164\141\142" + "\154\145\072\156\157\164\050\072\163\145\154\145\143\164\145\144" + "\051\072\150\157\166\145\162\054\040\154\151\163\164\056\143\157" + "\156\164\145\156\164\040\076\040\162\157\167\056\141\143\164\151" + "\166\141\164\141\142\154\145\072\156\157\164\050\072\163\145\154" + "\145\143\164\145\144\051\072\150\157\166\145\162\054\040\154\151" + "\163\164\056\142\157\170\145\144\055\154\151\163\164\040\076\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167" + "\056\150\145\141\144\145\162\056\141\143\164\151\166\141\164\141" + "\142\154\145\072\156\157\164\050\072\163\145\154\145\143\164\145" + "\144\051\072\150\157\166\145\162\054\040\154\151\163\164\056\143" + "\157\156\164\145\156\164\040\076\040\162\157\167\056\145\170\160" + "\141\156\144\145\162\040\162\157\167\056\150\145\141\144\145\162" + "\056\141\143\164\151\166\141\164\141\142\154\145\072\156\157\164" + "\050\072\163\145\154\145\143\164\145\144\051\072\150\157\166\145" + "\162\054\040\162\157\167\056\145\170\160\141\156\144\145\162\040" + "\154\151\163\164\056\156\145\163\164\145\144\040\076\040\162\157" + "\167\056\141\143\164\151\166\141\164\141\142\154\145\072\156\157" + "\164\050\072\163\145\154\145\143\164\145\144\051\072\150\157\166" + "\145\162\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\060\063\051\073" + "\040\175\012\012\154\151\163\164\056\142\157\170\145\144\055\154" + "\151\163\164\040\076\040\162\157\167\056\141\143\164\151\166\141" + "\164\141\142\154\145\072\156\157\164\050\072\163\145\154\145\143" + "\164\145\144\051\072\141\143\164\151\166\145\054\040\154\151\163" + "\164\056\143\157\156\164\145\156\164\040\076\040\162\157\167\056" + "\141\143\164\151\166\141\164\141\142\154\145\072\156\157\164\050" + "\072\163\145\154\145\143\164\145\144\051\072\141\143\164\151\166" + "\145\054\040\154\151\163\164\056\142\157\170\145\144\055\154\151" + "\163\164\040\076\040\162\157\167\056\145\170\160\141\156\144\145" + "\162\040\162\157\167\056\150\145\141\144\145\162\056\141\143\164" + "\151\166\141\164\141\142\154\145\072\156\157\164\050\072\163\145" + "\154\145\143\164\145\144\051\072\141\143\164\151\166\145\054\040" + "\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056" + "\150\145\141\144\145\162\056\141\143\164\151\166\141\164\141\142" + "\154\145\072\156\157\164\050\072\163\145\154\145\143\164\145\144" + "\051\072\141\143\164\151\166\145\054\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\040\154\151\163\164\056\156\145\163\164" + "\145\144\040\076\040\162\157\167\056\141\143\164\151\166\141\164" + "\141\142\154\145\072\156\157\164\050\072\163\145\154\145\143\164" + "\145\144\051\072\141\143\164\151\166\145\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\060\070\051\073\040\175\012\012\154\151\163\164" + "\056\142\157\170\145\144\055\154\151\163\164\040\076\040\162\157" + "\167\056\141\143\164\151\166\141\164\141\142\154\145\056\150\141" + "\163\055\157\160\145\156\055\160\157\160\165\160\072\156\157\164" + "\050\072\163\145\154\145\143\164\145\144\051\054\040\154\151\163" + "\164\056\143\157\156\164\145\156\164\040\076\040\162\157\167\056" + "\141\143\164\151\166\141\164\141\142\154\145\056\150\141\163\055" + "\157\160\145\156\055\160\157\160\165\160\072\156\157\164\050\072" + "\163\145\154\145\143\164\145\144\051\054\040\154\151\163\164\056" + "\142\157\170\145\144\055\154\151\163\164\040\076\040\162\157\167" + "\056\145\170\160\141\156\144\145\162\040\162\157\167\056\150\145" + "\141\144\145\162\056\141\143\164\151\166\141\164\141\142\154\145" + "\056\150\141\163\055\157\160\145\156\055\160\157\160\165\160\072" + "\156\157\164\050\072\163\145\154\145\143\164\145\144\051\054\040" + "\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056" + "\150\145\141\144\145\162\056\141\143\164\151\166\141\164\141\142" + "\154\145\056\150\141\163\055\157\160\145\156\055\160\157\160\165" + "\160\072\156\157\164\050\072\163\145\154\145\143\164\145\144\051" + "\054\040\162\157\167\056\145\170\160\141\156\144\145\162\040\154" + "\151\163\164\056\156\145\163\164\145\144\040\076\040\162\157\167" + "\056\141\143\164\151\166\141\164\141\142\154\145\056\150\141\163" + "\055\157\160\145\156\055\160\157\160\165\160\072\156\157\164\050" + "\072\163\145\154\145\143\164\145\144\051\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\060\063\051\073\040\175\012\012\162\157\167\056" + "\145\170\160\141\156\144\145\162\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\156\157\156\145\073\040\160\141\144" + "\144\151\156\147\072\040\060\160\170\073\040\175\012\012\162\157" + "\167\056\145\170\160\141\156\144\145\162\040\076\040\142\157\170" + "\040\076\040\154\151\163\164\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\156\157\156\145\073\040\143\157\154\157" + "\162\072\040\151\156\150\145\162\151\164\073\040\175\012\012\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\154\151\163\164" + "\056\156\145\163\164\145\144\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\100\143\141\162\144\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\065\051\073\040\143\157\154\157\162\072" + "\040\151\156\150\145\162\151\164\073\040\175\012\012\162\157\167" + "\056\145\170\160\141\156\144\145\162\040\151\155\141\147\145\056" + "\145\170\160\141\156\144\145\162\055\162\157\167\055\141\162\162" + "\157\167\040\173\040\164\162\141\156\163\151\164\151\157\156\072" + "\040\055\147\164\153\055\151\143\157\156\055\164\162\141\156\163" + "\146\157\162\155\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073" + "\040\175\012\012\162\157\167\056\145\170\160\141\156\144\145\162" + "\040\151\155\141\147\145\056\145\170\160\141\156\144\145\162\055" + "\162\157\167\055\141\162\162\157\167\072\144\151\162\050\154\164" + "\162\051\040\173\040\155\141\162\147\151\156\055\154\145\146\164" + "\072\040\063\160\170\073\040\175\012\012\162\157\167\056\145\170" + "\160\141\156\144\145\162\040\151\155\141\147\145\056\145\170\160" + "\141\156\144\145\162\055\162\157\167\055\141\162\162\157\167\072" + "\144\151\162\050\162\164\154\051\040\173\040\155\141\162\147\151" + "\156\055\162\151\147\150\164\072\040\063\160\170\073\040\175\012" + "\012\162\157\167\056\145\170\160\141\156\144\145\162\040\151\155" + "\141\147\145\056\145\170\160\141\156\144\145\162\055\162\157\167" + "\055\141\162\162\157\167\072\144\151\162\050\154\164\162\051\040" + "\173\040\055\147\164\153\055\151\143\157\156\055\164\162\141\156" + "\163\146\157\162\155\072\040\162\157\164\141\164\145\050\060\056" + "\065\164\165\162\156\051\073\040\175\012\012\162\157\167\056\145" + "\170\160\141\156\144\145\162\040\151\155\141\147\145\056\145\170" + "\160\141\156\144\145\162\055\162\157\167\055\141\162\162\157\167" + "\072\144\151\162\050\162\164\154\051\040\173\040\055\147\164\153" + "\055\151\143\157\156\055\164\162\141\156\163\146\157\162\155\072" + "\040\162\157\164\141\164\145\050\055\060\056\065\164\165\162\156" + "\051\073\040\175\012\012\162\157\167\056\145\170\160\141\156\144" + "\145\162\040\151\155\141\147\145\056\145\170\160\141\156\144\145" + "\162\055\162\157\167\055\141\162\162\157\167\072\144\151\163\141" + "\142\154\145\144\040\173\040\146\151\154\164\145\162\072\040\157" + "\160\141\143\151\164\171\050\060\056\064\051\073\040\175\012\012" + "\162\157\167\056\145\170\160\141\156\144\145\162\072\143\150\145" + "\143\153\145\144\040\151\155\141\147\145\056\145\170\160\141\156" + "\144\145\162\055\162\157\167\055\141\162\162\157\167\040\173\040" + "\055\147\164\153\055\151\143\157\156\055\164\162\141\156\163\146" + "\157\162\155\072\040\162\157\164\141\164\145\050\060\164\165\162" + "\156\051\073\040\157\160\141\143\151\164\171\072\040\061\073\040" + "\175\012\012\162\157\167\056\145\170\160\141\156\144\145\162\072" + "\143\150\145\143\153\145\144\040\151\155\141\147\145\056\145\170" + "\160\141\156\144\145\162\055\162\157\167\055\141\162\162\157\167" + "\072\156\157\164\050\072\144\151\163\141\142\154\145\144\051\040" + "\173\040\143\157\154\157\162\072\040\100\141\143\143\145\156\164" + "\137\143\157\154\157\162\073\040\175\012\012\056\157\163\144\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\072\143\150\145" + "\143\153\145\144\040\151\155\141\147\145\056\145\170\160\141\156" + "\144\145\162\055\162\157\167\055\141\162\162\157\167\072\156\157" + "\164\050\072\144\151\163\141\142\154\145\144\051\040\173\040\143" + "\157\154\157\162\072\040\151\156\150\145\162\151\164\073\040\175" + "\012\012\057\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\040\102\157\170\145\144\040\114\151\163\164\163" + "\040\052\040\052\057\012\154\151\163\164\056\142\157\170\145\144" + "\055\154\151\163\164\040\076\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\054\040\154\151\163\164\056\143\157\156\164\145" + "\156\164\040\076\040\162\157\167\056\145\170\160\141\156\144\145" + "\162\040\173\040\142\157\162\144\145\162\072\040\156\157\156\145" + "\073\040\175\012\012\154\151\163\164\056\142\157\170\145\144\055" + "\154\151\163\164\040\076\040\162\157\167\072\146\151\162\163\164" + "\055\143\150\151\154\144\054\040\154\151\163\164\056\143\157\156" + "\164\145\156\164\040\076\040\162\157\167\072\146\151\162\163\164" + "\055\143\150\151\154\144\054\040\154\151\163\164\056\142\157\170" + "\145\144\055\154\151\163\164\040\076\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\072\146\151\162\163\164\055\143\150\151" + "\154\144\040\162\157\167\056\150\145\141\144\145\162\054\040\154" + "\151\163\164\056\143\157\156\164\145\156\164\040\076\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\072\146\151\162\163\164" + "\055\143\150\151\154\144\040\162\157\167\056\150\145\141\144\145" + "\162\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154" + "\145\146\164\055\162\141\144\151\165\163\072\040\061\062\160\170" + "\073\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\061\062\160\170\073" + "\040\175\012\012\154\151\163\164\056\142\157\170\145\144\055\154" + "\151\163\164\040\076\040\162\157\167\072\154\141\163\164\055\143" + "\150\151\154\144\054\040\154\151\163\164\056\143\157\156\164\145" + "\156\164\040\076\040\162\157\167\072\154\141\163\164\055\143\150" + "\151\154\144\054\040\154\151\163\164\056\142\157\170\145\144\055" + "\154\151\163\164\040\076\040\162\157\167\056\145\170\160\141\156" + "\144\145\162\072\154\141\163\164\055\143\150\151\154\144\072\156" + "\157\164\050\072\143\150\145\143\153\145\144\051\054\040\154\151" + "\163\164\056\142\157\170\145\144\055\154\151\163\164\040\076\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\072\154\141\163" + "\164\055\143\150\151\154\144\072\156\157\164\050\072\143\150\145" + "\143\153\145\144\051\040\162\157\167\056\150\145\141\144\145\162" + "\054\040\154\151\163\164\056\143\157\156\164\145\156\164\040\076" + "\040\162\157\167\056\145\170\160\141\156\144\145\162\072\154\141" + "\163\164\055\143\150\151\154\144\072\156\157\164\050\072\143\150" + "\145\143\153\145\144\051\040\162\157\167\056\150\145\141\144\145" + "\162\054\040\154\151\163\164\056\142\157\170\145\144\055\154\151" + "\163\164\040\076\040\162\157\167\056\145\170\160\141\156\144\145" + "\162\072\154\141\163\164\055\143\150\151\154\144\072\143\150\145" + "\143\153\145\144\040\154\151\163\164\056\156\145\163\164\145\144" + "\054\040\154\151\163\164\056\143\157\156\164\145\156\164\040\076" + "\040\162\157\167\056\145\170\160\141\156\144\145\162\072\154\141" + "\163\164\055\143\150\151\154\144\072\143\150\145\143\153\145\144" + "\040\154\151\163\164\056\156\145\163\164\145\144\054\040\154\151" + "\163\164\056\142\157\170\145\144\055\154\151\163\164\040\076\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\072\154\141\163" + "\164\055\143\150\151\154\144\072\143\150\145\143\153\145\144\040" + "\154\151\163\164\056\156\145\163\164\145\144\040\076\040\162\157" + "\167\072\154\141\163\164\055\143\150\151\154\144\054\040\154\151" + "\163\164\056\143\157\156\164\145\156\164\040\076\040\162\157\167" + "\056\145\170\160\141\156\144\145\162\072\154\141\163\164\055\143" + "\150\151\154\144\072\143\150\145\143\153\145\144\040\154\151\163" + "\164\056\156\145\163\164\145\144\040\076\040\162\157\167\072\154" + "\141\163\164\055\143\150\151\154\144\040\173\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\061\062\160\170\073\040\142\157\162" + "\144\145\162\055\142\157\164\164\157\155\055\162\151\147\150\164" + "\055\162\141\144\151\165\163\072\040\061\062\160\170\073\040\142" + "\157\162\144\145\162\055\142\157\164\164\157\155\055\167\151\144" + "\164\150\072\040\060\073\040\175\012\012\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\076\040\143\157\156\164\145\156\164" + "\163\040\173\040\155\151\156\055\167\151\144\164\150\072\040\061" + "\062\060\160\170\073\040\175\012\012\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\163\143\162\157\154\154\142\141\162\056" + "\166\145\162\164\151\143\141\154\040\076\040\162\141\156\147\145" + "\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144" + "\145\162\040\173\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\063\060\160\170\073\040\175\012\012\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\142\157\170\056\151\156\154\151\156" + "\145\055\142\165\164\164\157\156\163\040\173\040\160\141\144\144" + "\151\156\147\072\040\060\040\061\062\160\170\073\040\175\012\012" + "\160\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170" + "\056\151\156\154\151\156\145\055\142\165\164\164\157\156\163\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\155\157\144\145\154\040\173\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\063\062\160\170\073\040\155\151" + "\156\055\167\151\144\164\150\072\040\063\062\160\170\073\040\160" + "\141\144\144\151\156\147\072\040\060\073\040\142\157\162\144\145" + "\162\072\040\156\157\156\145\073\040\157\165\164\154\151\156\145" + "\072\040\156\157\156\145\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\156\157\156\145\073\040\175\012\012\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\142\157\170\056\151\156" + "\154\151\156\145\055\142\165\164\164\157\156\163\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\155\157\144\145\154\072\163\145\154\145\143\164\145\144\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\051\073\040\175\012\012" + "\160\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170" + "\056\151\156\154\151\156\145\055\142\165\164\164\157\156\163\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\155\157\144\145\154\072\163\145\154\145\143\164" + "\145\144\072\141\143\164\151\166\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\071\051\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\142\157\170\056\143\151\162\143" + "\165\154\141\162\055\142\165\164\164\157\156\163\040\173\040\160" + "\141\144\144\151\156\147\072\040\061\062\160\170\040\061\062\160" + "\170\040\066\160\170\073\040\175\012\012\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\142\157\170\056\143\151\162\143\165" + "\154\141\162\055\142\165\164\164\157\156\163\040\142\165\164\164" + "\157\156\056\143\151\162\143\165\154\141\162\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\155\157\144\145\154\040\173" + "\040\157\165\164\154\151\156\145\072\040\156\157\156\145\073\040" + "\160\141\144\144\151\156\147\072\040\061\061\160\170\073\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\060\040\060\040\061\160\170\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\065\051\073\040\175\012\012\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162" + "\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056" + "\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\072\163\145\154\145" + "\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061\063" + "\051\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162\055" + "\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056\143" + "\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\155\157\144\145\154\072\163\145\154\145\143" + "\164\145\144\072\141\143\164\151\166\145\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\061\071\051\073\040\175\012\012\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\076\040\143\157\156\164\145" + "\156\164\163\040\173\040\160\141\144\144\151\156\147\072\040\060" + "\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\076\040\143\157\156\164\145\156\164\163\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\054\040\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\076\040\143\157\156\164\145" + "\156\164\163\040\076\040\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\040\076\040\166\151\145\167\160\157\162\164\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\173\040" + "\160\141\144\144\151\156\147\072\040\066\160\170\073\040\175\012" + "\012\160\157\160\157\166\145\162\056\155\145\156\165\040\163\145" + "\160\141\162\141\164\157\162\040\173\040\155\141\162\147\151\156" + "\072\040\066\160\170\040\060\073\040\175\012\012\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\154\151\163\164\040\163\145" + "\160\141\162\141\164\157\162\040\173\040\155\141\162\147\151\156" + "\072\040\060\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\141\143\143\145\154\145\162\141\164\157\162" + "\040\173\040\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\071" + "\051\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\141\143\143\145\154\145\162\141\164\157\162\072\144" + "\151\162\050\154\164\162\051\040\173\040\155\141\162\147\151\156" + "\055\154\145\146\164\072\040\061\062\160\170\073\040\175\012\012" + "\160\157\160\157\166\145\162\056\155\145\156\165\040\141\143\143" + "\145\154\145\162\141\164\157\162\072\144\151\162\050\162\164\154" + "\051\040\173\040\155\141\162\147\151\156\055\162\151\147\150\164" + "\072\040\061\062\160\170\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\143\150\145\143\153\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\162\141\144\151" + "\157\040\173\040\155\151\156\055\167\151\144\164\150\072\040\061" + "\064\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\061\064\160\170\073\040\055\147\164\153\055\151\143\157\156" + "\055\163\151\172\145\072\040\061\064\160\170\073\040\160\141\144" + "\144\151\156\147\072\040\062\160\170\073\040\175\012\012\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\143\150\145\143\153" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\143" + "\150\145\143\153\072\150\157\166\145\162\072\143\150\145\143\153" + "\145\144\054\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\143\150\145\143\153\072\150\157\166\145\162\072\151\156\144" + "\145\164\145\162\155\151\156\141\164\145\054\040\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\143\150\145\143\153\072\150" + "\157\166\145\162\072\156\157\164\050\072\143\150\145\143\153\145" + "\144\051\072\156\157\164\050\072\151\156\144\145\164\145\162\155" + "\151\156\141\164\145\051\054\040\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\143\150\145\143\153\072\141\143\164\151\166" + "\145\072\143\150\145\143\153\145\144\054\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\143\150\145\143\153\072\141\143" + "\164\151\166\145\072\151\156\144\145\164\145\162\155\151\156\141" + "\164\145\054\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\143\150\145\143\153\072\141\143\164\151\166\145\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\072\156\157\164\050" + "\072\151\156\144\145\164\145\162\155\151\156\141\164\145\051\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\162\141" + "\144\151\157\054\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\162\141\144\151\157\072\150\157\166\145\162\072\143\150" + "\145\143\153\145\144\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\162\141\144\151\157\072\150\157\166\145\162\072" + "\151\156\144\145\164\145\162\155\151\156\141\164\145\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\162\141\144\151" + "\157\072\150\157\166\145\162\072\156\157\164\050\072\143\150\145" + "\143\153\145\144\051\072\156\157\164\050\072\151\156\144\145\164" + "\145\162\155\151\156\141\164\145\051\054\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\162\141\144\151\157\072\141\143" + "\164\151\166\145\072\143\150\145\143\153\145\144\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\162\141\144\151\157" + "\072\141\143\164\151\166\145\072\151\156\144\145\164\145\162\155" + "\151\156\141\164\145\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\162\141\144\151\157\072\141\143\164\151\166\145" + "\072\156\157\164\050\072\143\150\145\143\153\145\144\051\072\156" + "\157\164\050\072\151\156\144\145\164\145\162\155\151\156\141\164" + "\145\051\040\173\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\156\157\156\145\073\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\156\157\156\145\073\040\143\157\154\157\162\072\040" + "\151\156\150\145\162\151\164\073\040\175\012\012\056\157\163\144" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\143\150" + "\145\143\153\054\040\056\157\163\144\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\162\141\144\151\157\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145\073" + "\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164\073" + "\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\162\141\144\151\157\040\173\040\160\141\144\144\151\156\147" + "\072\040\061\160\170\073\040\142\157\162\144\145\162\072\040\061" + "\160\170\040\163\157\154\151\144\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\070\051" + "\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\143\150\145\143\153\056\154\145\146\164\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\162\141\144\151\157" + "\056\154\145\146\164\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\141\162\162\157\167\056\154\145\146\164\040\173" + "\040\155\141\162\147\151\156\055\154\145\146\164\072\040\055\062" + "\160\170\073\040\155\141\162\147\151\156\055\162\151\147\150\164" + "\072\040\066\160\170\073\040\175\012\012\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\143\150\145\143\153\056\162\151\147" + "\150\164\054\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\162\141\144\151\157\056\162\151\147\150\164\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\141\162\162\157\167" + "\056\162\151\147\150\164\040\173\040\155\141\162\147\151\156\055" + "\154\145\146\164\072\040\066\160\170\073\040\155\141\162\147\151" + "\156\055\162\151\147\150\164\072\040\055\062\160\170\073\040\175" + "\012\012\160\157\160\157\166\145\162\056\155\145\156\165\040\155" + "\157\144\145\154\142\165\164\164\157\156\040\173\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\063\062\160\170\073\040\155" + "\151\156\055\167\151\144\164\150\072\040\064\060\160\170\073\040" + "\160\141\144\144\151\156\147\072\040\060\040\061\062\160\170\073" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\066\160\170\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\155\157\144\145\154\142\165\164\164\157\156" + "\072\150\157\166\145\162\054\040\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\155\157\144\145\154\142\165\164\164\157\156" + "\072\163\145\154\145\143\164\145\144\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\051\073\040\175\012\012\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\155\157\144\145\154\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\071\051\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\155\157\144\145\154\142\165\164" + "\164\157\156\072\150\157\166\145\162\054\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\155\157\144\145\154\142\165\164" + "\164\157\156\072\163\145\154\145\143\164\145\144\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\155\157\144\145\154" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\060\040\060\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\155\157\144\145\154\142\165\164\164\157\156" + "\040\141\162\162\157\167\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\156\157\156\145\073\040\155\151\156\055\167" + "\151\144\164\150\072\040\061\066\160\170\073\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\061\066\160\170\073\040\157\160" + "\141\143\151\164\171\072\040\060\056\070\073\040\175\012\012\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\155\157\144\145" + "\154\142\165\164\164\157\156\040\141\162\162\157\167\072\150\157" + "\166\145\162\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\156\157\156\145\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\155\157\144\145\154\142\165\164" + "\164\157\156\040\141\162\162\157\167\072\144\151\163\141\142\154" + "\145\144\040\173\040\146\151\154\164\145\162\072\040\157\160\141" + "\143\151\164\171\050\060\056\064\051\073\040\175\012\012\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\155\157\144\145\154" + "\142\165\164\164\157\156\040\141\162\162\157\167\056\154\145\146" + "\164\040\173\040\055\147\164\153\055\151\143\157\156\055\163\157" + "\165\162\143\145\072\040\055\147\164\153\055\151\143\157\156\164" + "\150\145\155\145\050\042\147\157\055\160\162\145\166\151\157\165" + "\163\055\163\171\155\142\157\154\151\143\042\051\073\040\175\012" + "\012\160\157\160\157\166\145\162\056\155\145\156\165\040\155\157" + "\144\145\154\142\165\164\164\157\156\040\141\162\162\157\167\056" + "\162\151\147\150\164\040\173\040\055\147\164\153\055\151\143\157" + "\156\055\163\157\165\162\143\145\072\040\055\147\164\153\055\151" + "\143\157\156\164\150\145\155\145\050\042\147\157\055\156\145\170" + "\164\055\163\171\155\142\157\154\151\143\042\051\073\040\175\012" + "\012\160\157\160\157\166\145\162\056\155\145\156\165\040\154\141" + "\142\145\154\056\164\151\164\154\145\040\173\040\146\157\156\164" + "\055\167\145\151\147\150\164\072\040\142\157\154\144\073\040\160" + "\141\144\144\151\156\147\072\040\064\160\170\040\063\062\160\170" + "\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\154\151\163\164\054\040\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\154\151\163\164\166\151\145\167\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145" + "\073\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164" + "\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\154\151\163\164\040\076\040\162\157\167\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\154\151\163\164\166" + "\151\145\167\040\076\040\162\157\167\040\173\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\066\160\170\073\040" + "\160\141\144\144\151\156\147\072\040\060\040\061\062\160\170\073" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\063\062\160" + "\170\073\040\155\151\156\055\167\151\144\164\150\072\040\064\060" + "\160\170\073\040\175\012\012\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\154\151\163\164\040\076\040\162\157\167\072\163" + "\145\154\145\143\164\145\144\054\040\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\154\151\163\164\166\151\145\167\040\076" + "\040\162\157\167\072\163\145\154\145\143\164\145\144\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145" + "\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\154\151\163\164\040\076\040\162\157\167\072\150\157\166" + "\145\162\054\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\154\151\163\164\040\076\040\162\157\167\056\141\143\164\151" + "\166\141\164\141\142\154\145\072\150\157\166\145\162\072\163\145" + "\154\145\143\164\145\144\054\040\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\154\151\163\164\166\151\145\167\040\076\040" + "\162\157\167\072\150\157\166\145\162\054\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\154\151\163\164\166\151\145\167" + "\040\076\040\162\157\167\056\141\143\164\151\166\141\164\141\142" + "\154\145\072\150\157\166\145\162\072\163\145\154\145\143\164\145" + "\144\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\051\073\040\175" + "\012\012\160\157\160\157\166\145\162\056\155\145\156\165\040\154" + "\151\163\164\040\076\040\162\157\167\072\141\143\164\151\166\145" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\154" + "\151\163\164\040\076\040\162\157\167\056\141\143\164\151\166\141" + "\164\141\142\154\145\072\141\143\164\151\166\145\072\163\145\154" + "\145\143\164\145\144\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\154\151\163\164\166\151\145\167\040\076\040\162" + "\157\167\072\141\143\164\151\166\145\054\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\154\151\163\164\166\151\145\167" + "\040\076\040\162\157\167\056\141\143\164\151\166\141\164\141\142" + "\154\145\072\141\143\164\151\166\145\072\163\145\154\145\143\164" + "\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\061\071\051\073" + "\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\154\151\163\164\040\076\040\162\157\167\056\150\141\163\055" + "\157\160\145\156\055\160\157\160\165\160\054\040\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\154\151\163\164\040\076\040" + "\162\157\167\056\150\141\163\055\157\160\145\156\055\160\157\160" + "\165\160\056\141\143\164\151\166\141\164\141\142\154\145\072\163" + "\145\154\145\143\164\145\144\054\040\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\154\151\163\164\166\151\145\167\040\076" + "\040\162\157\167\056\150\141\163\055\157\160\145\156\055\160\157" + "\160\165\160\054\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\154\151\163\164\166\151\145\167\040\076\040\162\157\167" + "\056\150\141\163\055\157\160\145\156\055\160\157\160\165\160\056" + "\141\143\164\151\166\141\164\141\142\154\145\072\163\145\154\145" + "\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061\051" + "\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\154\151\163\164\040\076\040\162\157\167\072\150\157\166" + "\145\162\054\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\154\151\163\164\040\076\040\162\157\167\072\141\143\164\151" + "\166\145\054\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\154\151\163\164\040\076\040\162\157\167\056\150\141\163\055" + "\157\160\145\156\055\160\157\160\165\160\054\040\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\154\151\163\164\166\151\145" + "\167\040\076\040\162\157\167\072\150\157\166\145\162\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\154\151\163\164" + "\166\151\145\167\040\076\040\162\157\167\072\141\143\164\151\166" + "\145\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\154\151\163\164\166\151\145\167\040\076\040\162\157\167\056\150" + "\141\163\055\157\160\145\156\055\160\157\160\165\160\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\060\040\060\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\154\151\163\164\040\076\040\162\157\167\040" + "\076\040\142\157\170\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\154\151\163\164\166\151\145\167\040\076\040\162" + "\157\167\040\076\040\142\157\170\040\173\040\142\157\162\144\145" + "\162\055\163\160\141\143\151\156\147\072\040\066\160\170\073\040" + "\175\012\012\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\143\157\156\164\145\156\164\163\040\076\040\154\151\163\164\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\143\157" + "\156\164\145\156\164\163\040\076\040\154\151\163\164\166\151\145" + "\167\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\040\076" + "\040\166\151\145\167\160\157\162\164\040\076\040\154\151\163\164" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\040\076\040" + "\154\151\163\164\166\151\145\167\040\173\040\160\141\144\144\151" + "\156\147\072\040\066\160\170\040\060\073\040\175\012\012\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\143\157\156\164\145" + "\156\164\163\040\076\040\154\151\163\164\040\076\040\162\157\167" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\143" + "\157\156\164\145\156\164\163\040\076\040\154\151\163\164\166\151" + "\145\167\040\076\040\162\157\167\054\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\040\076\040\166\151\145\167\160\157\162\164" + "\040\076\040\154\151\163\164\040\076\040\162\157\167\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\163\143\162\157" + "\154\154\145\144\167\151\156\144\157\167\040\076\040\154\151\163" + "\164\166\151\145\167\040\076\040\162\157\167\040\173\040\155\141" + "\162\147\151\156\072\040\060\040\066\160\170\073\040\160\141\144" + "\144\151\156\147\072\040\071\160\170\040\061\062\160\170\073\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\060\073\040\175" + "\012\012\155\145\156\165\142\141\162\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\055\061\160\170\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\065\051\073\040\160\141" + "\144\144\151\156\147\055\142\157\164\164\157\155\072\040\061\160" + "\170\073\040\175\012\012\155\145\156\165\142\141\162\040\076\040" + "\151\164\145\155\040\173\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\061\066\160\170\073\040\160\141\144\144\151\156\147" + "\072\040\064\160\170\040\070\160\170\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\066\160\170\073\040\175" + "\012\012\155\145\156\165\142\141\162\040\076\040\151\164\145\155" + "\072\163\145\154\145\143\164\145\144\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\051\073\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\060\040\060\040\060\040\061" + "\160\170\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\175\012\012\155" + "\145\156\165\142\141\162\040\076\040\151\164\145\155\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\173\040\160\141\144\144\151\156" + "\147\072\040\060\040\060\040\064\160\170\040\060\073\040\175\012" + "\012\155\145\156\165\142\141\162\040\076\040\151\164\145\155\040" + "\160\157\160\157\166\145\162\056\155\145\156\165\040\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\076\040\143\157\156\164" + "\145\156\164\163\040\173\040\155\141\162\147\151\156\072\040\060" + "\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072" + "\040\061\062\160\170\073\040\175\012\012\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162" + "\040\155\145\156\165\142\141\162\054\040\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055" + "\142\141\162\040\155\145\156\165\142\141\162\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\156\157\156\145\073\040" + "\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040" + "\060\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\040\107\164\153\115" + "\145\163\163\141\147\145\104\151\141\154\157\147\040\052\040\052" + "\057\012\167\151\156\144\157\167\056\144\151\141\154\157\147\056" + "\155\145\163\163\141\147\145\040\056\164\151\164\154\145\142\141" + "\162\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\062\060\160\170\073\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\156\157\156\145\073\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\156\157\156\145\073\040\142\157\162\144\145\162" + "\055\163\164\171\154\145\072\040\156\157\156\145\073\040\142\157" + "\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\067\160\170\073\040\142\157\162\144\145" + "\162\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151" + "\165\163\072\040\067\160\170\073\040\175\012\012\167\151\156\144" + "\157\167\056\144\151\141\154\157\147\056\155\145\163\163\141\147" + "\145\040\142\157\170\056\144\151\141\154\157\147\055\166\142\157" + "\170\056\166\145\162\164\151\143\141\154\040\173\040\155\141\162" + "\147\151\156\055\164\157\160\072\040\066\160\170\073\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\062\064" + "\160\170\073\040\175\012\012\167\151\156\144\157\167\056\144\151" + "\141\154\157\147\056\155\145\163\163\141\147\145\040\142\157\170" + "\056\144\151\141\154\157\147\055\166\142\157\170\056\166\145\162" + "\164\151\143\141\154\040\076\040\142\157\170\040\076\040\142\157" + "\170\040\076\040\142\157\170\040\076\040\154\141\142\145\154\056" + "\164\151\164\154\145\040\173\040\146\157\156\164\055\167\145\151" + "\147\150\164\072\040\070\060\060\073\040\146\157\156\164\055\163" + "\151\172\145\072\040\061\065\160\164\073\040\175\012\012\167\151" + "\156\144\157\167\056\144\151\141\154\157\147\056\155\145\163\163" + "\141\147\145\056\143\163\144\040\173\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\061\063\160\170\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\061\063\160\170\073\040\175\012\012" + "\167\151\156\144\157\167\056\144\151\141\154\157\147\056\155\145" + "\163\163\141\147\145\056\143\163\144\040\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\141\162\145\141\040\173\040" + "\142\157\162\144\145\162\055\164\157\160\072\040\061\160\170\040" + "\163\157\154\151\144\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040\155" + "\141\162\147\151\156\072\040\060\073\040\142\157\162\144\145\162" + "\055\163\160\141\143\151\156\147\072\040\060\073\040\175\012\012" + "\167\151\156\144\157\167\056\144\151\141\154\157\147\056\155\145" + "\163\163\141\147\145\056\143\163\144\040\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\141\162\145\141\040\076\040" + "\142\165\164\164\157\156\040\173\040\160\141\144\144\151\156\147" + "\072\040\061\060\160\170\040\061\064\160\170\073\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\060\073\040\142" + "\157\162\144\145\162\072\040\156\157\156\145\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\154\151\160\072\040\160\141" + "\144\144\151\156\147\055\142\157\170\073\040\142\157\162\144\145" + "\162\055\154\145\146\164\072\040\061\160\170\040\163\157\154\151" + "\144\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\065\051\073\040\175\012\012\167\151" + "\156\144\157\167\056\144\151\141\154\157\147\056\155\145\163\163" + "\141\147\145\056\143\163\144\040\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\141\162\145\141\040\076\040\142\165" + "\164\164\157\156\072\146\151\162\163\164\055\143\150\151\154\144" + "\040\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155" + "\055\154\145\146\164\055\162\141\144\151\165\163\072\040\061\063" + "\160\170\073\040\142\157\162\144\145\162\055\154\145\146\164\072" + "\040\156\157\156\145\073\040\175\012\012\167\151\156\144\157\167" + "\056\144\151\141\154\157\147\056\155\145\163\163\141\147\145\056" + "\143\163\144\040\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\141\162\145\141\040\076\040\142\165\164\164\157\156" + "\072\154\141\163\164\055\143\150\151\154\144\040\173\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\162\151\147\150" + "\164\055\162\141\144\151\165\163\072\040\061\063\160\170\073\040" + "\175\012\012\167\151\156\144\157\167\056\144\151\141\154\157\147" + "\056\155\145\163\163\141\147\145\056\143\163\144\040\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\141\162\145\141" + "\040\076\040\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\173\040\143\157\154" + "\157\162\072\040\100\141\143\143\145\156\164\137\143\157\154\157" + "\162\073\040\175\012\012\167\151\156\144\157\167\056\144\151\141" + "\154\157\147\056\155\145\163\163\141\147\145\056\143\163\144\040" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\141" + "\162\145\141\040\076\040\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\173\040\143\157\154\157\162\072\040\100\144\145\163\164\162\165" + "\143\164\151\166\145\137\143\157\154\157\162\073\040\175\012\012" + "\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\040\101\144\167\115\145\163\163\141\147\145" + "\104\151\141\154\157\147\040\052\040\052\057\012\167\151\156\144" + "\157\167\056\155\145\163\163\141\147\145\144\151\141\154\157\147" + "\054\040\144\151\141\154\157\147\055\150\157\163\164\040\076\040" + "\144\151\141\154\157\147\056\141\154\145\162\164\040\163\150\145" + "\145\164\054\040\167\151\156\144\157\167\056\144\151\141\154\157" + "\147\055\167\151\156\144\157\167\056\141\154\145\162\164\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\100\144\151\141\154\157\147\137\142\147\137\143\157" + "\154\157\162\073\040\143\157\154\157\162\072\040\100\144\151\141" + "\154\157\147\137\146\147\137\143\157\154\157\162\073\040\175\012" + "\012\144\151\141\154\157\147\055\150\157\163\164\040\076\040\144" + "\151\141\154\157\147\056\141\154\145\162\164\056\146\154\157\141" + "\164\151\156\147\040\163\150\145\145\164\054\040\167\151\156\144" + "\157\167\056\144\151\141\154\157\147\055\167\151\156\144\157\167" + "\056\141\154\145\162\164\040\173\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\061\063\160\170\073\040\157\165" + "\164\154\151\156\145\072\040\156\157\156\145\073\040\175\012\012" + "\167\151\156\144\157\167\056\155\145\163\163\141\147\145\144\151" + "\141\154\157\147\040\056\155\145\163\163\141\147\145\055\141\162" + "\145\141\054\040\144\151\141\154\157\147\056\141\154\145\162\164" + "\040\056\155\145\163\163\141\147\145\055\141\162\145\141\040\173" + "\040\160\141\144\144\151\156\147\072\040\062\064\160\170\040\063" + "\060\160\170\073\040\142\157\162\144\145\162\055\163\160\141\143" + "\151\156\147\072\040\062\064\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\056\155\145\163\163\141\147\145\144\151\141\154" + "\157\147\040\056\155\145\163\163\141\147\145\055\141\162\145\141" + "\056\150\141\163\055\150\145\141\144\151\156\147\056\150\141\163" + "\055\142\157\144\171\054\040\144\151\141\154\157\147\056\141\154" + "\145\162\164\040\056\155\145\163\163\141\147\145\055\141\162\145" + "\141\056\150\141\163\055\150\145\141\144\151\156\147\056\150\141" + "\163\055\142\157\144\171\040\173\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\061\060\160\170\073\040\175" + "\012\012\167\151\156\144\157\167\056\155\145\163\163\141\147\145" + "\144\151\141\154\157\147\040\056\162\145\163\160\157\156\163\145" + "\055\141\162\145\141\040\076\040\142\165\164\164\157\156\054\040" + "\144\151\141\154\157\147\056\141\154\145\162\164\040\056\162\145" + "\163\160\157\156\163\145\055\141\162\145\141\040\076\040\142\165" + "\164\164\157\156\040\173\040\160\141\144\144\151\156\147\072\040" + "\061\060\160\170\040\061\064\160\170\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\060\073\040\175\012\012" + "\167\151\156\144\157\167\056\155\145\163\163\141\147\145\144\151" + "\141\154\157\147\040\056\162\145\163\160\157\156\163\145\055\141" + "\162\145\141\040\076\040\142\165\164\164\157\156\072\150\157\166" + "\145\162\054\040\167\151\156\144\157\167\056\155\145\163\163\141" + "\147\145\144\151\141\154\157\147\040\056\162\145\163\160\157\156" + "\163\145\055\141\162\145\141\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\054\040\167\151\156\144\157\167\056\155\145\163" + "\163\141\147\145\144\151\141\154\157\147\040\056\162\145\163\160" + "\157\156\163\145\055\141\162\145\141\040\076\040\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\054\040\167\151\156\144\157" + "\167\056\155\145\163\163\141\147\145\144\151\141\154\157\147\040" + "\056\162\145\163\160\157\156\163\145\055\141\162\145\141\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\144\151\141\154\157\147\056\141\154\145\162\164\040\056\162" + "\145\163\160\157\156\163\145\055\141\162\145\141\040\076\040\142" + "\165\164\164\157\156\072\150\157\166\145\162\054\040\144\151\141" + "\154\157\147\056\141\154\145\162\164\040\056\162\145\163\160\157" + "\156\163\145\055\141\162\145\141\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\054\040\144\151\141\154\157\147\056\141\154" + "\145\162\164\040\056\162\145\163\160\157\156\163\145\055\141\162" + "\145\141\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\054\040\144\151\141\154\157\147\056\141\154\145\162\164" + "\040\056\162\145\163\160\157\156\163\145\055\141\162\145\141\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\175\012\012\167\151\156\144\157\167\056\155" + "\145\163\163\141\147\145\144\151\141\154\157\147\040\056\162\145" + "\163\160\157\156\163\145\055\141\162\145\141\040\076\040\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\054\040" + "\144\151\141\154\157\147\056\141\154\145\162\164\040\056\162\145" + "\163\160\157\156\163\145\055\141\162\145\141\040\076\040\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\040\173" + "\040\143\157\154\157\162\072\040\100\141\143\143\145\156\164\137" + "\143\157\154\157\162\073\040\175\012\012\167\151\156\144\157\167" + "\056\155\145\163\163\141\147\145\144\151\141\154\157\147\040\056" + "\162\145\163\160\157\156\163\145\055\141\162\145\141\040\076\040" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\054\040\144\151\141\154\157\147\056\141\154\145\162\164" + "\040\056\162\145\163\160\157\156\163\145\055\141\162\145\141\040" + "\076\040\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\040\173\040\143\157\154\157\162\072\040\100\144" + "\145\163\164\162\165\143\164\151\166\145\137\143\157\154\157\162" + "\073\040\175\012\012\167\151\156\144\157\167\056\155\145\163\163" + "\141\147\145\144\151\141\154\157\147\040\056\162\145\163\160\157" + "\156\163\145\055\141\162\145\141\072\156\157\164\050\056\143\157" + "\155\160\141\143\164\051\040\076\040\142\165\164\164\157\156\054" + "\040\144\151\141\154\157\147\056\141\154\145\162\164\040\056\162" + "\145\163\160\157\156\163\145\055\141\162\145\141\072\156\157\164" + "\050\056\143\157\155\160\141\143\164\051\040\076\040\142\165\164" + "\164\157\156\040\173\040\155\141\162\147\151\156\055\164\157\160" + "\072\040\055\061\160\170\073\040\155\141\162\147\151\156\055\162" + "\151\147\150\164\072\040\055\061\160\170\073\040\155\141\162\147" + "\151\156\055\154\145\146\164\072\040\055\061\160\170\073\040\175" + "\012\012\167\151\156\144\157\167\056\155\145\163\163\141\147\145" + "\144\151\141\154\157\147\040\056\162\145\163\160\157\156\163\145" + "\055\141\162\145\141\072\156\157\164\050\056\143\157\155\160\141" + "\143\164\051\040\076\040\142\165\164\164\157\156\072\146\151\162" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164\162" + "\051\054\040\167\151\156\144\157\167\056\155\145\163\163\141\147" + "\145\144\151\141\154\157\147\040\056\162\145\163\160\157\156\163" + "\145\055\141\162\145\141\072\156\157\164\050\056\143\157\155\160" + "\141\143\164\051\040\076\040\142\165\164\164\157\156\072\154\141" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\162\164\154" + "\051\054\040\144\151\141\154\157\147\056\141\154\145\162\164\040" + "\056\162\145\163\160\157\156\163\145\055\141\162\145\141\072\156" + "\157\164\050\056\143\157\155\160\141\143\164\051\040\076\040\142" + "\165\164\164\157\156\072\146\151\162\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\154\164\162\051\054\040\144\151\141\154" + "\157\147\056\141\154\145\162\164\040\056\162\145\163\160\157\156" + "\163\145\055\141\162\145\141\072\156\157\164\050\056\143\157\155" + "\160\141\143\164\051\040\076\040\142\165\164\164\157\156\072\154" + "\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162\164" + "\154\051\040\173\040\155\141\162\147\151\156\055\154\145\146\164" + "\072\040\060\073\040\175\012\012\167\151\156\144\157\167\056\155" + "\145\163\163\141\147\145\144\151\141\154\157\147\040\056\162\145" + "\163\160\157\156\163\145\055\141\162\145\141\072\156\157\164\050" + "\056\143\157\155\160\141\143\164\051\040\076\040\142\165\164\164" + "\157\156\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\154\164\162\051\054\040\167\151\156\144\157\167\056\155" + "\145\163\163\141\147\145\144\151\141\154\157\147\040\056\162\145" + "\163\160\157\156\163\145\055\141\162\145\141\072\156\157\164\050" + "\056\143\157\155\160\141\143\164\051\040\076\040\142\165\164\164" + "\157\156\072\146\151\162\163\164\055\143\150\151\154\144\072\144" + "\151\162\050\162\164\154\051\054\040\144\151\141\154\157\147\056" + "\141\154\145\162\164\040\056\162\145\163\160\157\156\163\145\055" + "\141\162\145\141\072\156\157\164\050\056\143\157\155\160\141\143" + "\164\051\040\076\040\142\165\164\164\157\156\072\154\141\163\164" + "\055\143\150\151\154\144\072\144\151\162\050\154\164\162\051\054" + "\040\144\151\141\154\157\147\056\141\154\145\162\164\040\056\162" + "\145\163\160\157\156\163\145\055\141\162\145\141\072\156\157\164" + "\050\056\143\157\155\160\141\143\164\051\040\076\040\142\165\164" + "\164\157\156\072\146\151\162\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\162\164\154\051\040\173\040\155\141\162\147\151" + "\156\055\162\151\147\150\164\072\040\060\073\040\175\012\012\167" + "\151\156\144\157\167\056\155\145\163\163\141\147\145\144\151\141" + "\154\157\147\040\056\162\145\163\160\157\156\163\145\055\141\162" + "\145\141\056\143\157\155\160\141\143\164\040\076\040\142\165\164" + "\164\157\156\054\040\144\151\141\154\157\147\056\141\154\145\162" + "\164\040\056\162\145\163\160\157\156\163\145\055\141\162\145\141" + "\056\143\157\155\160\141\143\164\040\076\040\142\165\164\164\157" + "\156\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\055\061\160\170\073\040\155\141\162\147\151\156\055\142\157\164" + "\164\157\155\072\040\055\061\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\056\155\145\163\163\141\147\145\144\151\141\154" + "\157\147\040\056\162\145\163\160\157\156\163\145\055\141\162\145" + "\141\056\143\157\155\160\141\143\164\040\076\040\142\165\164\164" + "\157\156\072\146\151\162\163\164\055\143\150\151\154\144\054\040" + "\144\151\141\154\157\147\056\141\154\145\162\164\040\056\162\145" + "\163\160\157\156\163\145\055\141\162\145\141\056\143\157\155\160" + "\141\143\164\040\076\040\142\165\164\164\157\156\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\173\040\155\141\162\147\151" + "\156\055\142\157\164\164\157\155\072\040\060\073\040\175\012\012" + "\167\151\156\144\157\167\056\155\145\163\163\141\147\145\144\151" + "\141\154\157\147\040\056\162\145\163\160\157\156\163\145\055\141" + "\162\145\141\072\156\157\164\050\056\143\157\155\160\141\143\164" + "\051\040\076\040\142\165\164\164\157\156\072\146\151\162\163\164" + "\055\143\150\151\154\144\072\144\151\162\050\154\164\162\051\054" + "\040\167\151\156\144\157\167\056\155\145\163\163\141\147\145\144" + "\151\141\154\157\147\040\056\162\145\163\160\157\156\163\145\055" + "\141\162\145\141\072\156\157\164\050\056\143\157\155\160\141\143" + "\164\051\040\076\040\142\165\164\164\157\156\072\154\141\163\164" + "\055\143\150\151\154\144\072\144\151\162\050\162\164\154\051\054" + "\040\144\151\141\154\157\147\056\141\154\145\162\164\056\146\154" + "\157\141\164\151\156\147\040\056\162\145\163\160\157\156\163\145" + "\055\141\162\145\141\072\156\157\164\050\056\143\157\155\160\141" + "\143\164\051\040\076\040\142\165\164\164\157\156\072\146\151\162" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164\162" + "\051\054\040\144\151\141\154\157\147\056\141\154\145\162\164\056" + "\146\154\157\141\164\151\156\147\040\056\162\145\163\160\157\156" + "\163\145\055\141\162\145\141\072\156\157\164\050\056\143\157\155" + "\160\141\143\164\051\040\076\040\142\165\164\164\157\156\072\154" + "\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162\164" + "\154\051\040\173\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\154\145\146\164\055\162\141\144\151\165\163\072\040" + "\061\063\160\170\073\040\175\012\012\167\151\156\144\157\167\056" + "\155\145\163\163\141\147\145\144\151\141\154\157\147\040\056\162" + "\145\163\160\157\156\163\145\055\141\162\145\141\072\156\157\164" + "\050\056\143\157\155\160\141\143\164\051\040\076\040\142\165\164" + "\164\157\156\072\154\141\163\164\055\143\150\151\154\144\072\144" + "\151\162\050\154\164\162\051\054\040\167\151\156\144\157\167\056" + "\155\145\163\163\141\147\145\144\151\141\154\157\147\040\056\162" + "\145\163\160\157\156\163\145\055\141\162\145\141\072\156\157\164" + "\050\056\143\157\155\160\141\143\164\051\040\076\040\142\165\164" + "\164\157\156\072\146\151\162\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\162\164\154\051\054\040\144\151\141\154\157\147" + "\056\141\154\145\162\164\056\146\154\157\141\164\151\156\147\040" + "\056\162\145\163\160\157\156\163\145\055\141\162\145\141\072\156" + "\157\164\050\056\143\157\155\160\141\143\164\051\040\076\040\142" + "\165\164\164\157\156\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\154\164\162\051\054\040\144\151\141\154\157" + "\147\056\141\154\145\162\164\056\146\154\157\141\164\151\156\147" + "\040\056\162\145\163\160\157\156\163\145\055\141\162\145\141\072" + "\156\157\164\050\056\143\157\155\160\141\143\164\051\040\076\040" + "\142\165\164\164\157\156\072\146\151\162\163\164\055\143\150\151" + "\154\144\072\144\151\162\050\162\164\154\051\040\173\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\162\151\147\150" + "\164\055\162\141\144\151\165\163\072\040\061\063\160\170\073\040" + "\175\012\012\167\151\156\144\157\167\056\155\145\163\163\141\147" + "\145\144\151\141\154\157\147\040\056\162\145\163\160\157\156\163" + "\145\055\141\162\145\141\056\143\157\155\160\141\143\164\040\076" + "\040\142\165\164\164\157\156\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\144\151\141\154\157\147\056\141\154\145\162" + "\164\056\146\154\157\141\164\151\156\147\040\056\162\145\163\160" + "\157\156\163\145\055\141\162\145\141\056\143\157\155\160\141\143" + "\164\040\076\040\142\165\164\164\157\156\072\146\151\162\163\164" + "\055\143\150\151\154\144\040\173\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\061\063\160\170\073\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\061\063\160\170\073\040\175\012\012\057" + "\052\052\052\052\052\052\052\052\052\052\040\106\162\141\155\145" + "\163\040\052\040\052\057\012\146\162\141\155\145\054\040\056\146" + "\162\141\155\145\040\173\040\142\157\162\144\145\162\072\040\061" + "\160\170\040\163\157\154\151\144\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051" + "\073\040\175\012\012\146\162\141\155\145\040\173\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\061\062\160\170" + "\073\040\175\012\012\146\162\141\155\145\040\076\040\154\141\142" + "\145\154\040\173\040\155\141\162\147\151\156\072\040\064\160\170" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\040\123\145\160\141\162\141\164\157\162\163\040" + "\052\040\052\057\012\163\145\160\141\162\141\164\157\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\155\151\156\055\167\151\144\164\150\072" + "\040\061\160\170\073\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\061\160\170\073\040\175\012\012\163\145\160\141\162\141" + "\164\157\162\056\163\160\141\143\145\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\156\157\156\145\073\040\175" + "\012\012\163\145\160\141\162\141\164\157\162\056\163\160\141\143" + "\145\162\056\150\157\162\151\172\157\156\164\141\154\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\061\062\160\170\073" + "\040\175\012\012\163\145\160\141\162\141\164\157\162\056\163\160" + "\141\143\145\162\056\166\145\162\164\151\143\141\154\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\061\062\160\170" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\040\101\160\160\040" + "\116\157\164\151\146\151\143\141\164\151\157\156\163\040\052\040" + "\052\057\012\056\141\160\160\055\156\157\164\151\146\151\143\141" + "\164\151\157\156\040\173\040\160\141\144\144\151\156\147\072\040" + "\061\060\160\170\073\040\142\157\162\144\145\162\055\163\160\141" + "\143\151\156\147\072\040\061\060\160\170\073\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\060\040\060\040\061" + "\062\160\170\040\061\062\160\170\073\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\162\147\142\141" + "\050\060\054\040\060\054\040\060\054\040\060\056\067\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145" + "\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\142\157\164\164\157\155\054\040\162\147\142" + "\141\050\060\054\040\060\054\040\060\054\040\060\056\062\051\054" + "\040\164\162\141\156\163\160\141\162\145\156\164\040\062\160\170" + "\051\073\040\142\141\143\153\147\162\157\165\156\144\055\143\154" + "\151\160\072\040\160\141\144\144\151\156\147\055\142\157\170\073" + "\040\175\012\012\056\141\160\160\055\156\157\164\151\146\151\143" + "\141\164\151\157\156\040\142\157\162\144\145\162\040\173\040\142" + "\157\162\144\145\162\072\040\156\157\156\145\073\040\175\012\012" + "\057\052\052\052\052\052\052\052\052\052\052\040\124\157\141\163" + "\164\163\040\052\040\052\057\012\164\157\141\163\164\040\173\040" + "\155\141\162\147\151\156\072\040\061\062\160\170\073\040\155\141" + "\162\147\151\156\055\142\157\164\164\157\155\072\040\062\064\160" + "\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\061\065\060\160\170\073\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\066\160\170\073\040\160\141" + "\144\144\151\156\147\072\040\066\160\170\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\060\040\060\040\060\040\061\160" + "\170\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\065\051\073\040\175\012\012\164\157" + "\141\163\164\072\144\151\162\050\154\164\162\051\040\173\040\160" + "\141\144\144\151\156\147\055\154\145\146\164\072\040\061\062\160" + "\170\073\040\175\012\012\164\157\141\163\164\072\144\151\162\050" + "\162\164\154\051\040\173\040\160\141\144\144\151\156\147\055\162" + "\151\147\150\164\072\040\061\062\160\170\073\040\175\012\012\164" + "\157\141\163\164\040\076\040\167\151\144\147\145\164\040\173\040" + "\155\141\162\147\151\156\072\040\060\040\066\160\170\073\040\175" + "\012\012\057\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\040\107\164\153\126\151\144\145\157\040\052\040\052\057\012" + "\166\151\144\145\157\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\072\040\142\154\141\143\153\073\040\175\012\012\166\151" + "\144\145\157\040\151\155\141\147\145\056\157\163\144\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\066\064\160\170\073" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\066\064\160" + "\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\063\062\160\170\073\040\175\012\012\057\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040\101" + "\144\167\101\142\157\165\164\127\151\156\144\157\167\040\052\040" + "\052\057\012\167\151\156\144\157\167\056\141\142\157\165\164\040" + "\056\155\141\151\156\055\160\141\147\145\040\076\040\166\151\145" + "\167\160\157\162\164\040\076\040\143\154\141\155\160\040\076\040" + "\142\157\170\054\040\144\151\141\154\157\147\056\141\142\157\165" + "\164\040\056\155\141\151\156\055\160\141\147\145\040\076\040\166" + "\151\145\167\160\157\162\164\040\076\040\143\154\141\155\160\040" + "\076\040\142\157\170\040\173\040\155\141\162\147\151\156\072\040" + "\061\062\160\170\073\040\142\157\162\144\145\162\055\163\160\141" + "\143\151\156\147\072\040\066\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\056\141\142\157\165\164\040\056\155\141\151\156" + "\055\160\141\147\145\040\076\040\166\151\145\167\160\157\162\164" + "\040\076\040\143\154\141\155\160\040\076\040\142\157\170\040\076" + "\040\142\157\170\054\040\144\151\141\154\157\147\056\141\142\157" + "\165\164\040\056\155\141\151\156\055\160\141\147\145\040\076\040" + "\166\151\145\167\160\157\162\164\040\076\040\143\154\141\155\160" + "\040\076\040\142\157\170\040\076\040\142\157\170\040\173\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\061\070\160\170\073" + "\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147\072" + "\040\061\070\160\170\073\040\155\141\162\147\151\156\055\142\157" + "\164\164\157\155\072\040\066\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\056\141\142\157\165\164\040\056\155\141\151\156" + "\055\160\141\147\145\040\056\141\160\160\055\166\145\162\163\151" + "\157\156\054\040\144\151\141\154\157\147\056\141\142\157\165\164" + "\040\056\155\141\151\156\055\160\141\147\145\040\056\141\160\160" + "\055\166\145\162\163\151\157\156\040\173\040\160\141\144\144\151" + "\156\147\072\040\063\160\170\040\061\070\160\170\073\040\143\157" + "\154\157\162\072\040\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\071\071\071\160\170\073\040\155\141\162\147\151\156" + "\055\164\157\160\072\040\063\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\056\141\142\157\165\164\040\056\163\165\142\160" + "\141\147\145\040\076\040\166\151\145\167\160\157\162\164\040\076" + "\040\143\154\141\155\160\040\076\040\142\157\170\054\040\144\151" + "\141\154\157\147\056\141\142\157\165\164\040\056\163\165\142\160" + "\141\147\145\040\076\040\166\151\145\167\160\157\162\164\040\076" + "\040\143\154\141\155\160\040\076\040\142\157\170\040\173\040\155" + "\141\162\147\151\156\072\040\061\070\160\170\040\061\062\160\170" + "\073\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\061\070\160\170\073\040\175\012\012\167\151\156\144\157" + "\167\056\141\142\157\165\164\040\056\163\165\142\160\141\147\145" + "\040\076\040\143\154\141\155\160\040\076\040\164\145\170\164\166" + "\151\145\167\054\040\144\151\141\154\157\147\056\141\142\157\165" + "\164\040\056\163\165\142\160\141\147\145\040\076\040\143\154\141" + "\155\160\040\076\040\164\145\170\164\166\151\145\167\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145" + "\073\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\040\101\144\167\123\164\141\164\165" + "\163\120\141\147\145\040\052\040\052\057\012\163\164\141\164\165" + "\163\160\141\147\145\040\076\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\040\076\040\166\151\145\167\160\157\162" + "\164\040\076\040\142\157\170\040\173\040\155\141\162\147\151\156" + "\072\040\063\066\160\170\040\061\062\160\170\073\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\063\066\160" + "\170\073\040\175\012\012\163\164\141\164\165\163\160\141\147\145" + "\040\076\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\040\076\040\166\151\145\167\160\157\162\164\040\076\040\142" + "\157\170\040\076\040\143\154\141\155\160\040\076\040\142\157\170" + "\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156" + "\147\072\040\061\062\160\170\073\040\175\012\012\163\164\141\164" + "\165\163\160\141\147\145\040\076\040\163\143\162\157\154\154\145" + "\144\167\151\156\144\157\167\040\076\040\166\151\145\167\160\157" + "\162\164\040\076\040\142\157\170\040\076\040\143\154\141\155\160" + "\040\076\040\142\157\170\040\076\040\056\151\143\157\156\040\173" + "\040\055\147\164\153\055\151\143\157\156\055\163\151\172\145\072" + "\040\061\062\070\160\170\073\040\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\071\051\073\040\175\012\012\163\164\141\164\165" + "\163\160\141\147\145\040\076\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\040\076\040\166\151\145\167\160\157\162" + "\164\040\076\040\142\157\170\040\076\040\143\154\141\155\160\040" + "\076\040\142\157\170\040\076\040\056\151\143\157\156\072\144\151" + "\163\141\142\154\145\144\040\173\040\157\160\141\143\151\164\171" + "\072\040\060\056\064\073\040\175\012\012\163\164\141\164\165\163" + "\160\141\147\145\040\076\040\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\040\076\040\166\151\145\167\160\157\162\164" + "\040\076\040\142\157\170\040\076\040\143\154\141\155\160\040\076" + "\040\142\157\170\040\076\040\056\151\143\157\156\072\156\157\164" + "\050\072\154\141\163\164\055\143\150\151\154\144\051\040\173\040" + "\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040\062" + "\064\160\170\073\040\175\012\012\163\164\141\164\165\163\160\141" + "\147\145\056\143\157\155\160\141\143\164\040\076\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\040\076\040\166\151" + "\145\167\160\157\162\164\040\076\040\142\157\170\040\173\040\155" + "\141\162\147\151\156\072\040\062\064\160\170\040\061\062\160\170" + "\073\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\062\064\160\170\073\040\175\012\012\163\164\141\164\165" + "\163\160\141\147\145\056\143\157\155\160\141\143\164\040\076\040" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\040\076" + "\040\166\151\145\167\160\157\162\164\040\076\040\142\157\170\040" + "\076\040\143\154\141\155\160\040\076\040\142\157\170\040\076\040" + "\056\151\143\157\156\040\173\040\055\147\164\153\055\151\143\157" + "\156\055\163\151\172\145\072\040\071\066\160\170\073\040\175\012" + "\012\163\164\141\164\165\163\160\141\147\145\056\143\157\155\160" + "\141\143\164\040\076\040\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\040\076\040\166\151\145\167\160\157\162\164\040" + "\076\040\142\157\170\040\076\040\143\154\141\155\160\040\076\040" + "\142\157\170\040\076\040\056\151\143\157\156\072\156\157\164\050" + "\072\154\141\163\164\055\143\150\151\154\144\051\040\173\040\155" + "\141\162\147\151\156\055\142\157\164\164\157\155\072\040\061\062" + "\160\170\073\040\175\012\012\163\164\141\164\165\163\160\141\147" + "\145\056\143\157\155\160\141\143\164\040\076\040\163\143\162\157" + "\154\154\145\144\167\151\156\144\157\167\040\076\040\166\151\145" + "\167\160\157\162\164\040\076\040\142\157\170\040\076\040\143\154" + "\141\155\160\040\076\040\142\157\170\040\076\040\056\164\151\164" + "\154\145\040\173\040\146\157\156\164\055\163\151\172\145\072\040" + "\061\070\160\164\073\040\175\012\012\057\052\040\103\141\162\144" + "\163\040\052\057\012\163\150\157\162\164\143\165\164\040\076\040" + "\056\153\145\171\143\141\160\054\040\154\151\163\164\056\142\157" + "\170\145\144\055\154\151\163\164\054\040\154\151\163\164\056\143" + "\157\156\164\145\156\164\054\040\056\143\141\162\144\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\100\143\141\162\144\137\142\147\137\143\157\154\157\162" + "\073\040\143\157\154\157\162\072\040\100\143\141\162\144\137\146" + "\147\137\143\157\154\157\162\073\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\061\062\160\170\073\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\060\040\060\040\060\040" + "\061\160\170\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\065\051\054\040\060\040\061" + "\160\170\040\063\160\170\040\061\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\060\067\051\054\040" + "\060\040\062\160\170\040\066\160\170\040\062\160\170\040\162\147" + "\142\141\050\060\054\040\060\054\040\060\054\040\060\056\060\063" + "\051\073\040\175\012\012\056\157\163\144\040\163\150\157\162\164" + "\143\165\164\040\076\040\056\153\145\171\143\141\160\054\040\056" + "\157\163\144\040\154\151\163\164\056\142\157\170\145\144\055\154" + "\151\163\164\054\040\056\157\163\144\040\154\151\163\164\056\143" + "\157\156\164\145\156\164\054\040\163\150\157\162\164\143\165\164" + "\040\076\040\056\157\163\144\056\153\145\171\143\141\160\054\040" + "\154\151\163\164\056\157\163\144\056\142\157\170\145\144\055\154" + "\151\163\164\054\040\154\151\163\164\056\157\163\144\056\143\157" + "\156\164\145\156\164\054\040\056\157\163\144\040\056\143\141\162" + "\144\054\040\056\143\141\162\144\056\157\163\144\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\051\073\040\143\157\154\157\162\072" + "\040\151\156\150\145\162\151\164\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\060\040\060\040\060\040\061\160\170\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\065\051\073\040\175\012\012\056\143\141\162" + "\144\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163" + "\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\065\160\170\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\073\040\175\012\012\056\143\141\162\144\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173" + "\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157" + "\154\157\162\054\060\056\070\051\073\040\157\165\164\154\151\156" + "\145\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165" + "\164\154\151\156\145\055\157\146\146\163\145\164\072\040\055\061" + "\160\170\073\040\175\012\012\056\157\163\144\040\056\143\141\162" + "\144\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\143\141\162\144\056\157\163\144" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\040\173\040\157\165\164\154\151\156\145\055\143" + "\157\154\157\162\072\040\162\147\142\141\050\062\065\065\054\040" + "\062\065\065\054\040\062\065\065\054\040\060\056\065\051\073\040" + "\175\012\012\056\143\141\162\144\056\141\143\164\151\166\141\164" + "\141\142\154\145\040\173\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\142\141\143\153\147\162\157\165\156\144\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\142\157\170\055\163\150\141" + "\144\157\167\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040" + "\175\012\012\056\143\141\162\144\056\141\143\164\151\166\141\164" + "\141\142\154\145\072\150\157\166\145\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151" + "\155\141\147\145\050\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\060\063\051\051\073\040" + "\175\012\012\056\143\141\162\144\056\141\143\164\151\166\141\164" + "\141\142\154\145\072\141\143\164\151\166\145\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040" + "\151\155\141\147\145\050\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\060\070\051\051\073" + "\040\175\012\012\057\052\040\124\162\141\156\163\151\164\151\157" + "\156\040\163\150\141\144\157\167\163\040\052\057\012\146\154\141" + "\160\040\076\040\144\151\155\155\151\156\147\054\040\154\145\141" + "\146\154\145\164\040\076\040\144\151\155\155\151\156\147\054\040" + "\156\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040" + "\076\040\144\151\155\155\151\156\147\054\040\157\166\145\162\154" + "\141\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040" + "\144\151\155\155\151\156\147\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\100\163\150\141\144\145\137\143\157\154" + "\157\162\073\040\175\012\012\146\154\141\160\040\076\040\142\157" + "\162\144\145\162\054\040\154\145\141\146\154\145\164\040\076\040" + "\142\157\162\144\145\162\054\040\156\141\166\151\147\141\164\151" + "\157\156\055\166\151\145\167\040\076\040\142\157\162\144\145\162" + "\054\040\157\166\145\162\154\141\171\055\163\160\154\151\164\055" + "\166\151\145\167\040\076\040\142\157\162\144\145\162\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\061\160\170\073\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\061\160\170\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\175\012\012\146\154\141\160\040\076\040" + "\163\150\141\144\157\167\054\040\154\145\141\146\154\145\164\040" + "\076\040\163\150\141\144\157\167\054\040\156\141\166\151\147\141" + "\164\151\157\156\055\166\151\145\167\040\076\040\163\150\141\144" + "\157\167\054\040\157\166\145\162\154\141\171\055\163\160\154\151" + "\164\055\166\151\145\167\040\076\040\163\150\141\144\157\167\040" + "\173\040\155\151\156\055\167\151\144\164\150\072\040\065\066\160" + "\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040\065" + "\066\160\170\073\040\175\012\012\146\154\141\160\040\076\040\163" + "\150\141\144\157\167\056\154\145\146\164\054\040\154\145\141\146" + "\154\145\164\040\076\040\163\150\141\144\157\167\056\154\145\146" + "\164\054\040\156\141\166\151\147\141\164\151\157\156\055\166\151" + "\145\167\040\076\040\163\150\141\144\157\167\056\154\145\146\164" + "\054\040\157\166\145\162\154\141\171\055\163\160\154\151\164\055" + "\166\151\145\167\040\076\040\163\150\141\144\157\167\056\154\145" + "\146\164\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\151\155\141\147\145\072\040\154\151\156\145\141\162\055\147\162" + "\141\144\151\145\156\164\050\164\157\040\162\151\147\150\164\054" + "\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\051\054\040\141\154\160\150\141\050" + "\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056\061" + "\064\051\040\064\060\160\170\054\040\141\154\160\150\141\050\100" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\051\040\065" + "\066\160\170\051\054\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\162\151\147\150\164\054\040" + "\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\064\051\054\040\141\154\160\150\141\050\100" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\061\064" + "\051\040\067\160\170\054\040\141\154\160\150\141\050\100\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\051\040\062\064\160" + "\170\051\073\040\175\012\012\146\154\141\160\040\076\040\163\150" + "\141\144\157\167\056\162\151\147\150\164\054\040\154\145\141\146" + "\154\145\164\040\076\040\163\150\141\144\157\167\056\162\151\147" + "\150\164\054\040\156\141\166\151\147\141\164\151\157\156\055\166" + "\151\145\167\040\076\040\163\150\141\144\157\167\056\162\151\147" + "\150\164\054\040\157\166\145\162\154\141\171\055\163\160\154\151" + "\164\055\166\151\145\167\040\076\040\163\150\141\144\157\167\056" + "\162\151\147\150\164\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\151\155\141\147\145\072\040\154\151\156\145\141\162" + "\055\147\162\141\144\151\145\156\164\050\164\157\040\154\145\146" + "\164\054\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\067\051\054\040\141\154\160\150" + "\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\061\064\051\040\064\060\160\170\054\040\141\154\160\150\141" + "\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060\051" + "\040\065\066\160\170\051\054\040\154\151\156\145\141\162\055\147" + "\162\141\144\151\145\156\164\050\164\157\040\154\145\146\164\054" + "\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\064\051\054\040\141\154\160\150\141\050" + "\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056\061" + "\064\051\040\067\160\170\054\040\141\154\160\150\141\050\100\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\051\040\062\064" + "\160\170\051\073\040\175\012\012\146\154\141\160\040\076\040\163" + "\150\141\144\157\167\056\165\160\054\040\154\145\141\146\154\145" + "\164\040\076\040\163\150\141\144\157\167\056\165\160\054\040\156" + "\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\056\165\160\054\040\157\166\145\162" + "\154\141\171\055\163\160\154\151\164\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\056\165\160\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040\154" + "\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164" + "\157\040\142\157\164\164\157\155\054\040\141\154\160\150\141\050" + "\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\051\054\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\061\064\051\040\064\060\160\170" + "\054\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\051\040\065\066\160\170\051\054\040\154" + "\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164" + "\157\040\142\157\164\164\157\155\054\040\141\154\160\150\141\050" + "\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056\064" + "\051\054\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\061\064\051\040\067\160\170\054" + "\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\051\040\062\064\160\170\051\073\040\175\012" + "\012\146\154\141\160\040\076\040\163\150\141\144\157\167\056\144" + "\157\167\156\054\040\154\145\141\146\154\145\164\040\076\040\163" + "\150\141\144\157\167\056\144\157\167\156\054\040\156\141\166\151" + "\147\141\164\151\157\156\055\166\151\145\167\040\076\040\163\150" + "\141\144\157\167\056\144\157\167\156\054\040\157\166\145\162\154" + "\141\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040" + "\163\150\141\144\157\167\056\144\157\167\156\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\164\157\160\054\040\141\154\160\150\141\050\100\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\051\054" + "\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\061\064\051\040\064\060\160\170\054\040" + "\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\051\040\065\066\160\170\051\054\040\154\151\156" + "\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040" + "\164\157\160\054\040\141\154\160\150\141\050\100\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\064\051\054\040\141\154" + "\160\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\061\064\051\040\067\160\170\054\040\141\154\160\150" + "\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\051\040\062\064\160\170\051\073\040\175\012\012\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\164\141\142\072\143\150\145\143\153" + "\145\144\040\173\040\157\165\164\154\151\156\145\072\040\060\040" + "\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156" + "\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\064\160\170\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165" + "\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\073\040\175\012\012\156\157\164\145\142\157\157\153\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\040\076\040\150\145\141\144\145\162\040\076\040\164\141" + "\142\163\040\076\040\164\141\142\072\143\150\145\143\153\145\144" + "\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164\137" + "\143\157\154\157\162\054\060\056\070\051\073\040\157\165\164\154" + "\151\156\145\055\167\151\144\164\150\072\040\062\160\170\073\040" + "\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040" + "\055\062\160\170\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\040\173\040\160\141\144" + "\144\151\156\147\072\040\061\160\170\073\040\142\157\162\144\145" + "\162\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051" + "\073\040\142\157\162\144\145\162\055\167\151\144\164\150\072\040" + "\061\160\170\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\154\151\160\072\040\160\141\144\144\151\156\147\055\142\157" + "\170\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040\173" + "\040\155\141\162\147\151\156\072\040\055\061\160\170\073\040\175" + "\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141" + "\144\145\162\056\164\157\160\040\173\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\163\164\171\154\145\072\040\163" + "\157\154\151\144\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\056\164\157\160\040\076" + "\040\164\141\142\163\040\173\040\155\141\162\147\151\156\055\142" + "\157\164\164\157\155\072\040\055\062\160\170\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\056\164\157\160\040\076\040\164\141\142\163\040\076\040\164" + "\141\142\072\150\157\166\145\162\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040\055" + "\064\160\170\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\065\051\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\056\164\157\160\040\076\040\164\141\142\163\040\076\040\164" + "\141\142\072\143\150\145\143\153\145\144\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\055\064\160\170\040\100\141\143\143\145\156\164\137\142\147" + "\137\143\157\154\157\162\073\040\175\012\012\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\056\142\157\164" + "\164\157\155\040\173\040\142\157\162\144\145\162\055\164\157\160" + "\055\163\164\171\154\145\072\040\163\157\154\151\144\073\040\175" + "\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141" + "\144\145\162\056\142\157\164\164\157\155\040\076\040\164\141\142" + "\163\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\055\062\160\170\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\056\142\157\164\164\157" + "\155\040\076\040\164\141\142\163\040\076\040\164\141\142\072\150" + "\157\166\145\162\040\173\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\060\040\064\160\170\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\065\051\073\040\175\012\012\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\056\142\157\164" + "\164\157\155\040\076\040\164\141\142\163\040\076\040\164\141\142" + "\072\143\150\145\143\153\145\144\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040\064" + "\160\170\040\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\056\154\145\146\164\040\173" + "\040\142\157\162\144\145\162\055\162\151\147\150\164\055\163\164" + "\171\154\145\072\040\163\157\154\151\144\073\040\175\012\012\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\056\154\145\146\164\040\076\040\164\141\142\163\040\173\040\155" + "\141\162\147\151\156\055\162\151\147\150\164\072\040\055\062\160" + "\170\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\056\154\145\146\164\040\076\040\164" + "\141\142\163\040\076\040\164\141\142\072\150\157\166\145\162\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\055\064\160\170\040\060\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\065\051\073\040\175\012\012\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\056\154\145\146\164\040\076\040" + "\164\141\142\163\040\076\040\164\141\142\072\143\150\145\143\153" + "\145\144\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\055\064\160\170\040\060\040\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073\040" + "\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145" + "\141\144\145\162\056\162\151\147\150\164\040\173\040\142\157\162" + "\144\145\162\055\154\145\146\164\055\163\164\171\154\145\072\040" + "\163\157\154\151\144\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\056\162\151\147\150" + "\164\040\076\040\164\141\142\163\040\173\040\155\141\162\147\151" + "\156\055\154\145\146\164\072\040\055\062\160\170\073\040\175\012" + "\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\056\162\151\147\150\164\040\076\040\164\141\142\163\040" + "\076\040\164\141\142\072\150\157\166\145\162\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\064\160\170\040\060\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040\175" + "\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141" + "\144\145\162\056\162\151\147\150\164\040\076\040\164\141\142\163" + "\040\076\040\164\141\142\072\143\150\145\143\153\145\144\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\064\160\170\040\060\040\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\073\040\175\012\012\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056" + "\164\157\160\040\076\040\164\141\142\163\040\076\040\141\162\162" + "\157\167\040\173\040\142\157\162\144\145\162\055\164\157\160\055" + "\163\164\171\154\145\072\040\156\157\156\145\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\056\142\157\164\164\157\155\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\040\173\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\163\164\171\154\145\072\040\156" + "\157\156\145\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\056\164\157\160\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\054\040\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056" + "\142\157\164\164\157\155\040\076\040\164\141\142\163\040\076\040" + "\141\162\162\157\167\040\173\040\155\141\162\147\151\156\055\154" + "\145\146\164\072\040\055\065\160\170\073\040\155\141\162\147\151" + "\156\055\162\151\147\150\164\072\040\055\065\160\170\073\040\160" + "\141\144\144\151\156\147\055\154\145\146\164\072\040\064\160\170" + "\073\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072" + "\040\064\160\170\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\056\164\157\160\040\076" + "\040\164\141\142\163\040\076\040\141\162\162\157\167\056\144\157" + "\167\156\054\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\056\142\157\164\164\157\155\040\076\040\164" + "\141\142\163\040\076\040\141\162\162\157\167\056\144\157\167\156" + "\040\173\040\055\147\164\153\055\151\143\157\156\055\163\157\165" + "\162\143\145\072\040\055\147\164\153\055\151\143\157\156\164\150" + "\145\155\145\050\042\160\141\156\055\163\164\141\162\164\055\163" + "\171\155\142\157\154\151\143\042\051\073\040\175\012\012\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056" + "\164\157\160\040\076\040\164\141\142\163\040\076\040\141\162\162" + "\157\167\056\165\160\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\056\142\157\164\164\157\155\040" + "\076\040\164\141\142\163\040\076\040\141\162\162\157\167\056\165" + "\160\040\173\040\055\147\164\153\055\151\143\157\156\055\163\157" + "\165\162\143\145\072\040\055\147\164\153\055\151\143\157\156\164" + "\150\145\155\145\050\042\160\141\156\055\145\156\144\055\163\171" + "\155\142\157\154\151\143\042\051\073\040\175\012\012\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056\154" + "\145\146\164\040\076\040\164\141\142\163\040\076\040\141\162\162" + "\157\167\040\173\040\142\157\162\144\145\162\055\154\145\146\164" + "\055\163\164\171\154\145\072\040\156\157\156\145\073\040\175\012" + "\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\056\162\151\147\150\164\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\040\173\040\142\157\162\144\145\162" + "\055\162\151\147\150\164\055\163\164\171\154\145\072\040\156\157" + "\156\145\073\040\175\012\012\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\056\154\145\146\164\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\054\040\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056" + "\162\151\147\150\164\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\040\173\040\155\141\162\147\151\156\055\164\157" + "\160\072\040\055\065\160\170\073\040\155\141\162\147\151\156\055" + "\142\157\164\164\157\155\072\040\055\065\160\170\073\040\160\141" + "\144\144\151\156\147\055\164\157\160\072\040\064\160\170\073\040" + "\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040" + "\064\160\170\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\056\154\145\146\164\040\076" + "\040\164\141\142\163\040\076\040\141\162\162\157\167\056\144\157" + "\167\156\054\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\056\162\151\147\150\164\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\056\144\157\167\156\040" + "\173\040\055\147\164\153\055\151\143\157\156\055\163\157\165\162" + "\143\145\072\040\055\147\164\153\055\151\143\157\156\164\150\145" + "\155\145\050\042\160\141\156\055\165\160\055\163\171\155\142\157" + "\154\151\143\042\051\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\056\154\145\146\164" + "\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167\056" + "\165\160\054\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\056\162\151\147\150\164\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\056\165\160\040\173\040" + "\055\147\164\153\055\151\143\157\156\055\163\157\165\162\143\145" + "\072\040\055\147\164\153\055\151\143\157\156\164\150\145\155\145" + "\050\042\160\141\156\055\144\157\167\156\055\163\171\155\142\157" + "\154\151\143\042\051\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\040\173\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\061\066\160\170\073\040\155" + "\151\156\055\167\151\144\164\150\072\040\061\066\160\170\073\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\060" + "\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040" + "\141\162\162\157\167\072\150\157\166\145\162\072\156\157\164\050" + "\072\141\143\164\151\166\145\051\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\156\157\156\145\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\164\141\142\040\173" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\157\165\164" + "\154\151\156\145\055\143\157\154\157\162\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\073\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\063\060\160\170\073\040\155\151" + "\156\055\167\151\144\164\150\072\040\063\060\160\170\073\040\160" + "\141\144\144\151\156\147\072\040\063\160\170\040\061\062\160\170" + "\073\040\146\157\156\164\055\167\145\151\147\150\164\072\040\156" + "\157\162\155\141\154\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141" + "\142\163\040\076\040\164\141\142\072\150\157\166\145\162\054\040" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\164\141\142\072\141" + "\143\164\151\166\145\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\060" + "\067\051\073\040\175\012\012\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\164\141\142\072\156\157\164\050\072\143\150\145\143\153" + "\145\144\051\040\173\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\072\040\164\162\141\156\163\160\141\162\145\156\164" + "\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040" + "\164\141\142\072\144\151\163\141\142\154\145\144\040\173\040\146" + "\151\154\164\145\162\072\040\157\160\141\143\151\164\171\050\060" + "\056\064\051\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163" + "\040\076\040\164\141\142\072\144\151\163\141\142\154\145\144\040" + "\154\141\142\145\154\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\164\141\142\072\144\151\163\141\142\154\145\144\040\142" + "\165\164\164\157\156\040\173\040\146\151\154\164\145\162\072\040" + "\156\157\156\145\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142" + "\163\040\076\040\164\141\142\040\142\165\164\164\157\156\056\146" + "\154\141\164\040\173\040\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\063\051\073\040\160\141\144\144\151\156\147\072\040\060" + "\073\040\155\141\162\147\151\156\055\164\157\160\072\040\064\160" + "\170\073\040\155\141\162\147\151\156\055\142\157\164\164\157\155" + "\072\040\064\160\170\073\040\155\151\156\055\167\151\144\164\150" + "\072\040\062\060\160\170\073\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\062\060\160\170\073\040\175\012\012\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076" + "\040\164\141\142\163\040\076\040\164\141\142\040\142\165\164\164" + "\157\156\056\146\154\141\164\072\150\157\166\145\162\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\164\141\142\040\142\165" + "\164\164\157\156\056\146\154\141\164\072\141\143\164\151\166\145" + "\040\173\040\143\157\154\157\162\072\040\143\165\162\162\145\156" + "\164\103\157\154\157\162\073\040\175\012\012\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164" + "\141\142\163\040\076\040\164\141\142\040\142\165\164\164\157\156" + "\056\146\154\141\164\072\154\141\163\164\055\143\150\151\154\144" + "\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072\040" + "\064\160\170\073\040\155\141\162\147\151\156\055\162\151\147\150" + "\164\072\040\055\064\160\170\073\040\175\012\012\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\164\141\142\040\142\165\164\164\157" + "\156\056\146\154\141\164\072\146\151\162\163\164\055\143\150\151" + "\154\144\040\173\040\155\141\162\147\151\156\055\154\145\146\164" + "\072\040\055\064\160\170\073\040\155\141\162\147\151\156\055\162" + "\151\147\150\164\072\040\064\160\170\073\040\175\012\012\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056" + "\164\157\160\040\076\040\164\141\142\163\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\056\142\157" + "\164\164\157\155\040\076\040\164\141\142\163\040\173\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\064\160\170\073" + "\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040" + "\064\160\170\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\056\164\157\160\040\076\040" + "\164\141\142\163\072\156\157\164\050\072\157\156\154\171\055\143" + "\150\151\154\144\051\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\056\142\157\164\164\157\155\040" + "\076\040\164\141\142\163\072\156\157\164\050\072\157\156\154\171" + "\055\143\150\151\154\144\051\040\173\040\155\141\162\147\151\156" + "\055\154\145\146\164\072\040\063\160\170\073\040\155\141\162\147" + "\151\156\055\162\151\147\150\164\072\040\063\160\170\073\040\175" + "\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141" + "\144\145\162\056\164\157\160\040\076\040\164\141\142\163\072\156" + "\157\164\050\072\157\156\154\171\055\143\150\151\154\144\051\072" + "\146\151\162\163\164\055\143\150\151\154\144\054\040\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056\142" + "\157\164\164\157\155\040\076\040\164\141\142\163\072\156\157\164" + "\050\072\157\156\154\171\055\143\150\151\154\144\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\040\173\040\155\141\162\147" + "\151\156\055\154\145\146\164\072\040\055\061\160\170\073\040\175" + "\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141" + "\144\145\162\056\164\157\160\040\076\040\164\141\142\163\072\156" + "\157\164\050\072\157\156\154\171\055\143\150\151\154\144\051\072" + "\154\141\163\164\055\143\150\151\154\144\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\056\142\157" + "\164\164\157\155\040\076\040\164\141\142\163\072\156\157\164\050" + "\072\157\156\154\171\055\143\150\151\154\144\051\072\154\141\163" + "\164\055\143\150\151\154\144\040\173\040\155\141\162\147\151\156" + "\055\162\151\147\150\164\072\040\055\061\160\170\073\040\175\012" + "\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\056\164\157\160\040\076\040\164\141\142\163\040\076\040" + "\164\141\142\054\040\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\056\142\157\164\164\157\155\040\076\040" + "\164\141\142\163\040\076\040\164\141\142\040\173\040\155\141\162" + "\147\151\156\055\154\145\146\164\072\040\064\160\170\073\040\155" + "\141\162\147\151\156\055\162\151\147\150\164\072\040\064\160\170" + "\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\056\154\145\146\164\040\076\040\164\141" + "\142\163\054\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\056\162\151\147\150\164\040\076\040\164\141" + "\142\163\040\173\040\160\141\144\144\151\156\147\055\164\157\160" + "\072\040\064\160\170\073\040\160\141\144\144\151\156\147\055\142" + "\157\164\164\157\155\072\040\064\160\170\073\040\175\012\012\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\056\154\145\146\164\040\076\040\164\141\142\163\072\156\157\164" + "\050\072\157\156\154\171\055\143\150\151\154\144\051\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\056\162\151\147\150\164\040\076\040\164\141\142\163\072\156\157" + "\164\050\072\157\156\154\171\055\143\150\151\154\144\051\040\173" + "\040\155\141\162\147\151\156\055\164\157\160\072\040\063\160\170" + "\073\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072" + "\040\063\160\170\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\056\154\145\146\164\040" + "\076\040\164\141\142\163\072\156\157\164\050\072\157\156\154\171" + "\055\143\150\151\154\144\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\056\162\151\147\150\164\040\076\040\164" + "\141\142\163\072\156\157\164\050\072\157\156\154\171\055\143\150" + "\151\154\144\051\072\146\151\162\163\164\055\143\150\151\154\144" + "\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040\055" + "\061\160\170\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\056\154\145\146\164\040\076" + "\040\164\141\142\163\072\156\157\164\050\072\157\156\154\171\055" + "\143\150\151\154\144\051\072\154\141\163\164\055\143\150\151\154" + "\144\054\040\156\157\164\145\142\157\157\153\040\076\040\150\145" + "\141\144\145\162\056\162\151\147\150\164\040\076\040\164\141\142" + "\163\072\156\157\164\050\072\157\156\154\171\055\143\150\151\154" + "\144\051\072\154\141\163\164\055\143\150\151\154\144\040\173\040" + "\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040\055" + "\061\160\170\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\056\154\145\146\164\040\076" + "\040\164\141\142\163\040\076\040\164\141\142\054\040\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056\162" + "\151\147\150\164\040\076\040\164\141\142\163\040\076\040\164\141" + "\142\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\064\160\170\073\040\155\141\162\147\151\156\055\142\157\164\164" + "\157\155\072\040\064\160\170\073\040\175\012\012\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\056\164\157" + "\160\040\076\040\164\141\142\163\040\076\040\164\141\142\040\173" + "\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072" + "\040\064\160\170\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\056\142\157\164\164\157" + "\155\040\076\040\164\141\142\163\040\076\040\164\141\142\040\173" + "\040\160\141\144\144\151\156\147\055\164\157\160\072\040\064\160" + "\170\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076" + "\040\163\164\141\143\153\072\156\157\164\050\072\157\156\154\171" + "\055\143\150\151\154\144\051\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\100\166\151\145" + "\167\137\142\147\137\143\157\154\157\162\073\040\175\012\012\160" + "\141\156\145\144\040\076\040\163\145\160\141\162\141\164\157\162" + "\040\173\040\155\151\156\055\167\151\144\164\150\072\040\061\160" + "\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040\061" + "\160\170\073\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\156\157\156\145\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\163\151\172\145\072\040\061\160\170\040\061\160\170\073\040" + "\175\012\012\160\141\156\145\144\040\076\040\163\145\160\141\162" + "\141\164\157\162\056\167\151\144\145\040\173\040\155\151\156\055" + "\167\151\144\164\150\072\040\065\160\170\073\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\065\160\170\073\040\175\012\012" + "\160\141\156\145\144\056\150\157\162\151\172\157\156\164\141\154" + "\040\076\040\163\145\160\141\162\141\164\157\162\072\144\151\162" + "\050\154\164\162\051\040\173\040\155\141\162\147\151\156\072\040" + "\060\040\055\070\160\170\040\060\040\060\073\040\160\141\144\144" + "\151\156\147\072\040\060\040\070\160\170\040\060\040\060\073\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\061\160\170\040\060\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073" + "\040\175\012\012\160\141\156\145\144\056\150\157\162\151\172\157" + "\156\164\141\154\040\076\040\163\145\160\141\162\141\164\157\162" + "\072\144\151\162\050\162\164\154\051\040\173\040\155\141\162\147" + "\151\156\072\040\060\040\060\040\060\040\055\070\160\170\073\040" + "\160\141\144\144\151\156\147\072\040\060\040\060\040\060\040\070" + "\160\170\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\055\061\160\170\040\060\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\175\012\012\160\141\156\145\144\056\150" + "\157\162\151\172\157\156\164\141\154\040\076\040\163\145\160\141" + "\162\141\164\157\162\056\167\151\144\145\040\173\040\155\141\162" + "\147\151\156\072\040\060\073\040\160\141\144\144\151\156\147\072" + "\040\060\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\061\160\170\040\060\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\054\040\151\156\163\145\164\040\055\061\160\170\040" + "\060\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\065\051\073\040\175\012\012\160\141" + "\156\145\144\056\166\145\162\164\151\143\141\154\040\076\040\163" + "\145\160\141\162\141\164\157\162\040\173\040\155\141\162\147\151" + "\156\072\040\060\040\060\040\055\070\160\170\040\060\073\040\160" + "\141\144\144\151\156\147\072\040\060\040\060\040\070\160\170\040" + "\060\073\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\060\040\061\160\170\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\065\051\073\040\175\012\012\160\141\156\145\144\056\166\145\162" + "\164\151\143\141\154\040\076\040\163\145\160\141\162\141\164\157" + "\162\056\167\151\144\145\040\173\040\155\141\162\147\151\156\072" + "\040\060\073\040\160\141\144\144\151\156\147\072\040\060\073\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\060\040\061\160\170\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051\054" + "\040\151\156\163\145\164\040\060\040\055\061\160\170\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\065\051\073\040\175\012\012\164\157\157\154\142\141" + "\162\166\151\145\167\056\165\156\144\145\162\163\150\157\157\164" + "\055\164\157\160\040\160\157\160\157\166\145\162\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\040\165\156\144\145" + "\162\163\150\157\157\164\056\164\157\160\054\040\164\157\157\154" + "\142\141\162\166\151\145\167\056\165\156\144\145\162\163\150\157" + "\157\164\055\142\157\164\164\157\155\040\160\157\160\157\166\145" + "\162\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\040\165\156\144\145\162\163\150\157\157\164\056\142\157\164\164" + "\157\155\040\173\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\156\157\156\145\073\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\156\157\156\145\073\040\175\012\012\160\157\160\157" + "\166\145\162\056\142\141\143\153\147\162\157\165\156\144\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040" + "\146\157\156\164\072\040\151\156\151\164\151\141\154\073\040\175" + "\012\012\160\157\160\157\166\145\162\040\076\040\141\162\162\157" + "\167\054\040\160\157\160\157\166\145\162\040\076\040\143\157\156" + "\164\145\156\164\163\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\100\160\157\160\157\166" + "\145\162\137\142\147\137\143\157\154\157\162\073\040\143\157\154" + "\157\162\072\040\100\160\157\160\157\166\145\162\137\146\147\137" + "\143\157\154\157\162\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\154\151\160\072\040\160\141\144\144\151\156\147\055" + "\142\157\170\073\040\142\157\162\144\145\162\072\040\061\160\170" + "\040\163\157\154\151\144\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\060\040\061\160" + "\170\040\065\160\170\040\061\160\170\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\060\071\051\054\040\060" + "\040\062\160\170\040\061\064\160\170\040\063\160\170\040\162\147" + "\142\141\050\060\054\040\060\054\040\060\054\040\060\056\060\065" + "\051\073\040\175\012\012\160\157\160\157\166\145\162\040\076\040" + "\143\157\156\164\145\156\164\163\040\173\040\160\141\144\144\151" + "\156\147\072\040\070\160\170\073\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\061\062\160\170\073\040\175\012" + "\012\160\157\160\157\166\145\162\040\076\040\143\157\156\164\145" + "\156\164\163\040\076\040\154\151\163\164\054\040\160\157\160\157" + "\166\145\162\040\076\040\143\157\156\164\145\156\164\163\040\076" + "\040\056\166\151\145\167\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\160\157\160\157\166\145\162\040\076\040\143" + "\157\156\164\145\156\164\163\040\076\040\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\054\040\160\157" + "\160\157\166\145\162\040\076\040\143\157\156\164\145\156\164\163" + "\040\076\040\164\157\157\154\142\141\162\040\173\040\142\157\162" + "\144\145\162\055\163\164\171\154\145\072\040\156\157\156\145\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040" + "\175\012\012\056\157\163\144\040\160\157\160\157\166\145\162\054" + "\040\160\157\160\157\166\145\162\056\164\157\165\143\150\055\163" + "\145\154\145\143\164\151\157\156\054\040\160\157\160\157\166\145" + "\162\056\155\141\147\156\151\146\151\145\162\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\175\012\012" + "\056\157\163\144\040\160\157\160\157\166\145\162\040\076\040\141" + "\162\162\157\167\054\040\056\157\163\144\040\160\157\160\157\166" + "\145\162\040\076\040\143\157\156\164\145\156\164\163\054\040\160" + "\157\160\157\166\145\162\056\164\157\165\143\150\055\163\145\154" + "\145\143\164\151\157\156\040\076\040\141\162\162\157\167\054\040" + "\160\157\160\157\166\145\162\056\164\157\165\143\150\055\163\145" + "\154\145\143\164\151\157\156\040\076\040\143\157\156\164\145\156" + "\164\163\054\040\160\157\160\157\166\145\162\056\155\141\147\156" + "\151\146\151\145\162\040\076\040\141\162\162\157\167\054\040\160" + "\157\160\157\166\145\162\056\155\141\147\156\151\146\151\145\162" + "\040\076\040\143\157\156\164\145\156\164\163\040\173\040\142\157" + "\162\144\145\162\072\040\061\160\170\040\163\157\154\151\144\040" + "\162\147\142\141\050\062\065\065\054\040\062\065\065\054\040\062" + "\065\065\054\040\060\056\061\051\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\156\157\156\145\073\040\175\012\012\160" + "\157\160\157\166\145\162\040\164\157\157\154\142\141\162\166\151" + "\145\167\056\165\156\144\145\162\163\150\157\157\164\055\164\157" + "\160\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\040\076\040\165\156\144\145\162\163\150\157\157\164\056\164\157" + "\160\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\142\157\164\164\157\155\054\040\141\154\160\150" + "\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162" + "\141\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040" + "\175\012\012\160\157\160\157\166\145\162\040\164\157\157\154\142" + "\141\162\166\151\145\167\056\165\156\144\145\162\163\150\157\157" + "\164\055\142\157\164\164\157\155\040\163\143\162\157\154\154\145" + "\144\167\151\156\144\157\167\040\076\040\165\156\144\145\162\163" + "\150\157\157\164\056\142\157\164\164\157\155\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\060\040\055\061\160\170\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\164" + "\157\160\054\040\141\154\160\150\141\050\100\160\157\160\157\166" + "\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145\156" + "\164\040\064\160\170\051\073\040\175\012\012\160\157\160\157\166" + "\145\162\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\056\165\156\144\145\162\163\150\157\157\164\055\164\157\160" + "\040\076\040\165\156\144\145\162\163\150\157\157\164\056\164\157" + "\160\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\142\157\164\164\157\155\054\040\141\154\160\150" + "\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162" + "\141\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040" + "\175\012\012\160\157\160\157\166\145\162\040\163\143\162\157\154" + "\154\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163" + "\150\157\157\164\055\142\157\164\164\157\155\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\142\157\164\164\157\155\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\060\040\055\061\160\170\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\164\157\160\054\040\141\154\160\150\141\050\100\160" + "\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\067\065\051\054\040\164\162\141\156\163\160" + "\141\162\145\156\164\040\064\160\170\051\073\040\175\012\012\160" + "\157\160\157\166\145\162\040\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\056\165\156\144\145\162\163\150\157\157\164" + "\055\163\164\141\162\164\072\144\151\162\050\154\164\162\051\040" + "\076\040\165\156\144\145\162\163\150\157\157\164\056\154\145\146" + "\164\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\061\160\170\040\060\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\162\151\147\150\164\054\040\141\154\160\150\141" + "\050\100\160\157\160\157\166\145\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162\141" + "\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040\175" + "\012\012\160\157\160\157\166\145\162\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163\150" + "\157\157\164\055\163\164\141\162\164\072\144\151\162\050\162\164" + "\154\051\040\076\040\165\156\144\145\162\163\150\157\157\164\056" + "\162\151\147\150\164\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\055\061\160\170\040\060" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\154\145\146\164\054\040\141" + "\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054" + "\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170" + "\051\073\040\175\012\012\160\157\160\157\166\145\162\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\056\165\156\144" + "\145\162\163\150\157\157\164\055\145\156\144\072\144\151\162\050" + "\154\164\162\051\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\162\151\147\150\164\040\173\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\151\156\163\145\164\040\055\061\160\170" + "\040\060\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147" + "\162\141\144\151\145\156\164\050\164\157\040\154\145\146\164\054" + "\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065" + "\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064" + "\160\170\051\073\040\175\012\012\160\157\160\157\166\145\162\040" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056\165" + "\156\144\145\162\163\150\157\157\164\055\145\156\144\072\144\151" + "\162\050\162\164\154\051\040\076\040\165\156\144\145\162\163\150" + "\157\157\164\056\154\145\146\164\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\151\156\163\145\164\040\061\160\170" + "\040\060\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147" + "\162\141\144\151\145\156\164\050\164\157\040\162\151\147\150\164" + "\054\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\065\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040" + "\064\160\170\051\073\040\175\012\012\160\157\160\157\166\145\162" + "\040\146\154\141\160\040\076\040\144\151\155\155\151\156\147\054" + "\040\160\157\160\157\166\145\162\040\154\145\141\146\154\145\164" + "\040\076\040\144\151\155\155\151\156\147\054\040\160\157\160\157" + "\166\145\162\040\156\141\166\151\147\141\164\151\157\156\055\166" + "\151\145\167\040\076\040\144\151\155\155\151\156\147\054\040\160" + "\157\160\157\166\145\162\040\157\166\145\162\154\141\171\055\163" + "\160\154\151\164\055\166\151\145\167\040\076\040\144\151\155\155" + "\151\156\147\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\100\160\157\160\157\166\145\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\073\040\175\012\012\160\157\160\157\166" + "\145\162\040\146\154\141\160\040\076\040\142\157\162\144\145\162" + "\054\040\160\157\160\157\166\145\162\040\154\145\141\146\154\145" + "\164\040\076\040\142\157\162\144\145\162\054\040\160\157\160\157" + "\166\145\162\040\156\141\166\151\147\141\164\151\157\156\055\166" + "\151\145\167\040\076\040\142\157\162\144\145\162\054\040\160\157" + "\160\157\166\145\162\040\157\166\145\162\154\141\171\055\163\160" + "\154\151\164\055\166\151\145\167\040\076\040\142\157\162\144\145" + "\162\040\173\040\155\151\156\055\167\151\144\164\150\072\040\061" + "\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\061\160\170\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\073\040\175\012\012\160\157\160" + "\157\166\145\162\040\146\154\141\160\040\076\040\163\150\141\144" + "\157\167\054\040\160\157\160\157\166\145\162\040\154\145\141\146" + "\154\145\164\040\076\040\163\150\141\144\157\167\054\040\160\157" + "\160\157\166\145\162\040\156\141\166\151\147\141\164\151\157\156" + "\055\166\151\145\167\040\076\040\163\150\141\144\157\167\054\040" + "\160\157\160\157\166\145\162\040\157\166\145\162\154\141\171\055" + "\163\160\154\151\164\055\166\151\145\167\040\076\040\163\150\141" + "\144\157\167\040\173\040\155\151\156\055\167\151\144\164\150\072" + "\040\065\066\160\170\073\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\065\066\160\170\073\040\175\012\012\160\157\160\157" + "\166\145\162\040\146\154\141\160\040\076\040\163\150\141\144\157" + "\167\056\154\145\146\164\054\040\160\157\160\157\166\145\162\040" + "\154\145\141\146\154\145\164\040\076\040\163\150\141\144\157\167" + "\056\154\145\146\164\054\040\160\157\160\157\166\145\162\040\156" + "\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\056\154\145\146\164\054\040\160\157" + "\160\157\166\145\162\040\157\166\145\162\154\141\171\055\163\160" + "\154\151\164\055\166\151\145\167\040\076\040\163\150\141\144\157" + "\167\056\154\145\146\164\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162\151" + "\147\150\164\054\040\141\154\160\150\141\050\100\160\157\160\157" + "\166\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\051\054\040\141\154\160\150\141\050\100\160\157\160" + "\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\061\064\051\040\064\060\160\170\054\040\141\154\160" + "\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\051\040\065\066\160\170\051" + "\054\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\162\151\147\150\164\054\040\141\154\160\150" + "\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\064\051\054\040\141\154\160" + "\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\061\064\051\040\067\160" + "\170\054\040\141\154\160\150\141\050\100\160\157\160\157\166\145" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\051" + "\040\062\064\160\170\051\073\040\175\012\012\160\157\160\157\166" + "\145\162\040\146\154\141\160\040\076\040\163\150\141\144\157\167" + "\056\162\151\147\150\164\054\040\160\157\160\157\166\145\162\040" + "\154\145\141\146\154\145\164\040\076\040\163\150\141\144\157\167" + "\056\162\151\147\150\164\054\040\160\157\160\157\166\145\162\040" + "\156\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040" + "\076\040\163\150\141\144\157\167\056\162\151\147\150\164\054\040" + "\160\157\160\157\166\145\162\040\157\166\145\162\154\141\171\055" + "\163\160\154\151\164\055\166\151\145\167\040\076\040\163\150\141" + "\144\157\167\056\162\151\147\150\164\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\154\151" + "\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157" + "\040\154\145\146\164\054\040\141\154\160\150\141\050\100\160\157" + "\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\051\054\040\141\154\160\150\141\050\100\160" + "\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\061\064\051\040\064\060\160\170\054\040\141" + "\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\051\040\065\066\160" + "\170\051\054\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\164\157\040\154\145\146\164\054\040\141\154\160" + "\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\064\051\054\040\141\154" + "\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040\067" + "\160\170\054\040\141\154\160\150\141\050\100\160\157\160\157\166" + "\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\051\040\062\064\160\170\051\073\040\175\012\012\160\157\160\157" + "\166\145\162\040\146\154\141\160\040\076\040\163\150\141\144\157" + "\167\056\165\160\054\040\160\157\160\157\166\145\162\040\154\145" + "\141\146\154\145\164\040\076\040\163\150\141\144\157\167\056\165" + "\160\054\040\160\157\160\157\166\145\162\040\156\141\166\151\147" + "\141\164\151\157\156\055\166\151\145\167\040\076\040\163\150\141" + "\144\157\167\056\165\160\054\040\160\157\160\157\166\145\162\040" + "\157\166\145\162\154\141\171\055\163\160\154\151\164\055\166\151" + "\145\167\040\076\040\163\150\141\144\157\167\056\165\160\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147" + "\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145" + "\156\164\050\164\157\040\142\157\164\164\157\155\054\040\141\154" + "\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\051\054\040\141" + "\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040" + "\064\060\160\170\054\040\141\154\160\150\141\050\100\160\157\160" + "\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\051\040\065\066\160\170\051\054\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\142\157" + "\164\164\157\155\054\040\141\154\160\150\141\050\100\160\157\160" + "\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\064\051\054\040\141\154\160\150\141\050\100\160\157" + "\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\061\064\051\040\067\160\170\054\040\141\154\160" + "\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\051\040\062\064\160\170\051" + "\073\040\175\012\012\160\157\160\157\166\145\162\040\146\154\141" + "\160\040\076\040\163\150\141\144\157\167\056\144\157\167\156\054" + "\040\160\157\160\157\166\145\162\040\154\145\141\146\154\145\164" + "\040\076\040\163\150\141\144\157\167\056\144\157\167\156\054\040" + "\160\157\160\157\166\145\162\040\156\141\166\151\147\141\164\151" + "\157\156\055\166\151\145\167\040\076\040\163\150\141\144\157\167" + "\056\144\157\167\156\054\040\160\157\160\157\166\145\162\040\157" + "\166\145\162\154\141\171\055\163\160\154\151\164\055\166\151\145" + "\167\040\076\040\163\150\141\144\157\167\056\144\157\167\156\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\164\157\040\164\157\160\054\040\141\154\160\150" + "\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\067\051\054\040\141\154\160" + "\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\061\064\051\040\064\060" + "\160\170\054\040\141\154\160\150\141\050\100\160\157\160\157\166" + "\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\051\040\065\066\160\170\051\054\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\164\157\040\164\157\160\054" + "\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\064\051" + "\054\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\061" + "\064\051\040\067\160\170\054\040\141\154\160\150\141\050\100\160" + "\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\051\040\062\064\160\170\051\073\040\175\012\012" + "\160\162\145\146\145\162\145\156\143\145\163\160\141\147\145\040" + "\076\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\040\076\040\166\151\145\167\160\157\162\164\040\076\040\143\154" + "\141\155\160\040\076\040\142\157\170\040\173\040\155\141\162\147" + "\151\156\072\040\062\064\160\170\040\061\062\160\170\073\040\142" + "\157\162\144\145\162\055\163\160\141\143\151\156\147\072\040\062" + "\064\160\170\073\040\175\012\012\160\162\145\146\145\162\145\156" + "\143\145\163\147\162\157\165\160\040\076\040\142\157\170\054\040" + "\160\162\145\146\145\162\145\156\143\145\163\147\162\157\165\160" + "\040\076\040\142\157\170\040\056\154\141\142\145\154\163\040\173" + "\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147\072" + "\040\066\160\170\073\040\175\012\012\160\162\145\146\145\162\145" + "\156\143\145\163\147\162\157\165\160\040\076\040\142\157\170\040" + "\076\040\142\157\170\056\150\145\141\144\145\162\072\156\157\164" + "\050\056\163\151\156\147\154\145\055\154\151\156\145\051\040\173" + "\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040" + "\066\160\170\073\040\175\012\012\160\162\145\146\145\162\145\156" + "\143\145\163\147\162\157\165\160\040\076\040\142\157\170\040\076" + "\040\142\157\170\056\163\151\156\147\154\145\055\154\151\156\145" + "\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040\063" + "\064\160\170\073\040\175\012\012\160\162\157\147\162\145\163\163" + "\142\141\162\056\150\157\162\151\172\157\156\164\141\154\040\076" + "\040\164\162\157\165\147\150\040\173\040\155\151\156\055\167\151" + "\144\164\150\072\040\061\065\060\160\170\073\040\175\012\012\160" + "\162\157\147\162\145\163\163\142\141\162\056\150\157\162\151\172" + "\157\156\164\141\154\040\076\040\164\162\157\165\147\150\054\040" + "\160\162\157\147\162\145\163\163\142\141\162\056\150\157\162\151" + "\172\157\156\164\141\154\040\076\040\164\162\157\165\147\150\040" + "\076\040\160\162\157\147\162\145\163\163\040\173\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\070\160\170\073\040\175\012" + "\012\160\162\157\147\162\145\163\163\142\141\162\056\166\145\162" + "\164\151\143\141\154\040\076\040\164\162\157\165\147\150\040\173" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\070\060\160" + "\170\073\040\175\012\012\160\162\157\147\162\145\163\163\142\141" + "\162\056\166\145\162\164\151\143\141\154\040\076\040\164\162\157" + "\165\147\150\054\040\160\162\157\147\162\145\163\163\142\141\162" + "\056\166\145\162\164\151\143\141\154\040\076\040\164\162\157\165" + "\147\150\040\076\040\160\162\157\147\162\145\163\163\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\070\160\170\073\040" + "\175\012\012\160\162\157\147\162\145\163\163\142\141\162\040\076" + "\040\164\145\170\164\040\173\040\146\157\156\164\055\163\151\172" + "\145\072\040\163\155\141\154\154\145\162\073\040\175\012\012\160" + "\162\157\147\162\145\163\163\142\141\162\072\144\151\163\141\142" + "\154\145\144\040\173\040\146\151\154\164\145\162\072\040\157\160" + "\141\143\151\164\171\050\060\056\064\051\073\040\175\012\012\160" + "\162\157\147\162\145\163\163\142\141\162\040\076\040\164\162\157" + "\165\147\150\040\076\040\160\162\157\147\162\145\163\163\040\173" + "\040\057\052\040\163\150\141\162\145\040\155\157\163\164\040\157" + "\146\040\163\143\141\154\145\163\047\040\052\057\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\071\071\160\170" + "\073\040\175\012\012\160\162\157\147\162\145\163\163\142\141\162" + "\040\076\040\164\162\157\165\147\150\040\076\040\160\162\157\147" + "\162\145\163\163\056\154\145\146\164\040\173\040\142\157\162\144" + "\145\162\055\164\157\160\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\071\071\160\170\073\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\071\071\160\170\073\040\175\012\012\160\162" + "\157\147\162\145\163\163\142\141\162\040\076\040\164\162\157\165" + "\147\150\040\076\040\160\162\157\147\162\145\163\163\056\162\151" + "\147\150\164\040\173\040\142\157\162\144\145\162\055\164\157\160" + "\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040\071" + "\071\160\170\073\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\162\151\147\150\164\055\162\141\144\151\165\163\072" + "\040\071\071\160\170\073\040\175\012\012\160\162\157\147\162\145" + "\163\163\142\141\162\040\076\040\164\162\157\165\147\150\040\076" + "\040\160\162\157\147\162\145\163\163\056\164\157\160\040\173\040" + "\142\157\162\144\145\162\055\164\157\160\055\162\151\147\150\164" + "\055\162\141\144\151\165\163\072\040\071\071\160\170\073\040\142" + "\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\071\071\160\170\073\040\175\012\012" + "\160\162\157\147\162\145\163\163\142\141\162\040\076\040\164\162" + "\157\165\147\150\040\076\040\160\162\157\147\162\145\163\163\056" + "\142\157\164\164\157\155\040\173\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144" + "\151\165\163\072\040\071\071\160\170\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\071\071\160\170\073\040\175\012\012\160" + "\162\157\147\162\145\163\163\142\141\162\056\157\163\144\040\173" + "\040\155\151\156\055\167\151\144\164\150\072\040\062\160\170\073" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\062\160\170" + "\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164\073" + "\040\175\012\012\160\162\157\147\162\145\163\163\142\141\162\056" + "\157\163\144\040\076\040\164\162\157\165\147\150\040\173\040\142" + "\157\162\144\145\162\055\163\164\171\154\145\072\040\156\157\156" + "\145\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\060\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\156\157\156\145\073\040\175\012\012\160\162\157\147\162\145\163" + "\163\142\141\162\056\157\163\144\040\076\040\164\162\157\165\147" + "\150\040\076\040\160\162\157\147\162\145\163\163\040\173\040\142" + "\157\162\144\145\162\055\163\164\171\154\145\072\040\156\157\156" + "\145\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\060\073\040\175\012\012\160\162\157\147\162\145\163\163" + "\142\141\162\056\157\163\144\056\150\157\162\151\172\157\156\164" + "\141\154\040\076\040\164\162\157\165\147\150\054\040\160\162\157" + "\147\162\145\163\163\142\141\162\056\157\163\144\056\150\157\162" + "\151\172\157\156\164\141\154\040\076\040\164\162\157\165\147\150" + "\040\076\040\160\162\157\147\162\145\163\163\040\173\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\062\160\170\073\040\175" + "\012\012\160\162\157\147\162\145\163\163\142\141\162\056\157\163" + "\144\056\166\145\162\164\151\143\141\154\040\076\040\164\162\157" + "\165\147\150\054\040\160\162\157\147\162\145\163\163\142\141\162" + "\056\157\163\144\056\166\145\162\164\151\143\141\154\040\076\040" + "\164\162\157\165\147\150\040\076\040\160\162\157\147\162\145\163" + "\163\040\173\040\155\151\156\055\167\151\144\164\150\072\040\062" + "\160\170\073\040\175\012\012\160\162\157\147\162\145\163\163\142" + "\141\162\040\076\040\164\162\157\165\147\150\056\145\155\160\164" + "\171\040\076\040\160\162\157\147\162\145\163\163\040\173\040\141" + "\154\154\072\040\165\156\163\145\164\073\040\175\012\012\056\157" + "\163\144\040\160\162\157\147\162\145\163\163\142\141\162\040\076" + "\040\164\162\157\165\147\150\040\076\040\160\162\157\147\162\145" + "\163\163\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\162\147\142\141\050\062\065\065\054" + "\040\062\065\065\054\040\062\065\065\054\040\060\056\067\065\051" + "\073\040\175\012\012\163\143\141\154\145\040\076\040\164\162\157" + "\165\147\150\040\076\040\146\151\154\154\054\040\163\143\141\154" + "\145\040\076\040\164\162\157\165\147\150\054\040\160\162\157\147" + "\162\145\163\163\142\141\162\040\076\040\164\162\157\165\147\150" + "\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\071\071\160\170\073\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\063" + "\051\073\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\060\040\060\040\060\040\061\160\170\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\065\051\073\040\175\012\012\163\143\141\154\145" + "\040\076\040\164\162\157\165\147\150\040\076\040\150\151\147\150" + "\154\151\147\150\164\054\040\160\162\157\147\162\145\163\163\142" + "\141\162\040\076\040\164\162\157\165\147\150\040\076\040\160\162" + "\157\147\162\145\163\163\040\173\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\071\071\160\170\073\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162" + "\073\040\143\157\154\157\162\072\040\100\141\143\143\145\156\164" + "\137\146\147\137\143\157\154\157\162\073\040\175\012\012\163\143" + "\141\154\145\040\173\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\061\060\160\170\073\040\155\151\156\055\167\151\144\164" + "\150\072\040\061\060\160\170\073\040\160\141\144\144\151\156\147" + "\072\040\061\062\160\170\073\040\175\012\012\163\143\141\154\145" + "\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144" + "\145\162\040\173\040\157\165\164\154\151\156\145\072\040\060\040" + "\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156" + "\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\066\160\170\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165" + "\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\073\040\175\012\012\163\143\141\154\145\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040" + "\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145" + "\162\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\143\157\154\157\162\054\060\056\070\051\073\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\072\040\062\160\170\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\060\073\040\175\012\012\163\143\141\154\145\040\076\040\164" + "\162\157\165\147\150\040\076\040\163\154\151\144\145\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\155\151\170\050\167\150\151\164\145\054\100\166\151" + "\145\167\137\142\147\137\143\157\154\157\162\054\060\056\062\051" + "\073\040\142\157\170\055\163\150\141\144\157\167\072\040\060\040" + "\060\040\060\040\061\160\170\040\162\147\142\141\050\060\054\040" + "\060\054\040\060\054\040\060\056\063\065\051\054\040\060\040\062" + "\160\170\040\064\160\170\040\162\147\142\141\050\060\054\040\060" + "\054\040\060\054\040\060\056\062\051\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\061\060\060\045\073\040" + "\155\151\156\055\167\151\144\164\150\072\040\062\060\160\170\073" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\062\060\160" + "\170\073\040\155\141\162\147\151\156\072\040\055\070\160\170\073" + "\040\175\012\012\163\143\141\154\145\072\150\157\166\145\162\040" + "\076\040\164\162\157\165\147\150\054\040\163\143\141\154\145\072" + "\141\143\164\151\166\145\040\076\040\164\162\157\165\147\150\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\064\051\073\040\175\012\012" + "\163\143\141\154\145\072\150\157\166\145\162\040\076\040\164\162" + "\157\165\147\150\040\076\040\150\151\147\150\154\151\147\150\164" + "\054\040\163\143\141\154\145\072\141\143\164\151\166\145\040\076" + "\040\164\162\157\165\147\150\040\076\040\150\151\147\150\154\151" + "\147\150\164\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\151\155\141\147\145\050\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\051\051\073\040\175\012\012\163\143\141\154\145" + "\072\150\157\166\145\162\040\076\040\164\162\157\165\147\150\040" + "\076\040\163\154\151\144\145\162\054\040\163\143\141\154\145\072" + "\141\143\164\151\166\145\040\076\040\164\162\157\165\147\150\040" + "\076\040\163\154\151\144\145\162\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\167\150\151" + "\164\145\073\040\175\012\012\056\157\163\144\040\163\143\141\154" + "\145\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\040\076\040\164\162\157\165\147\150\040\173" + "\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040" + "\162\147\142\141\050\062\065\065\054\040\062\065\065\054\040\062" + "\065\065\054\040\060\056\065\051\073\040\175\012\012\056\157\163" + "\144\040\163\143\141\154\145\040\076\040\164\162\157\165\147\150" + "\040\076\040\150\151\147\150\154\151\147\150\164\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\162\147\142\141\050\062\065\065\054\040\062\065\065\054\040" + "\062\065\065\054\040\060\056\067\065\051\073\040\143\157\154\157" + "\162\072\040\162\147\142\141\050\060\054\040\060\054\040\060\054" + "\040\060\056\067\065\051\073\040\175\012\012\163\143\141\154\145" + "\072\144\151\163\141\142\154\145\144\040\173\040\146\151\154\164" + "\145\162\072\040\157\160\141\143\151\164\171\050\060\056\064\051" + "\073\040\175\012\012\163\143\141\154\145\072\144\151\163\141\142" + "\154\145\144\040\076\040\164\162\157\165\147\150\040\076\040\163" + "\154\151\144\145\162\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\060\040\060\040\060\040\061\160\170\040\162\147" + "\142\141\050\060\054\040\060\054\040\060\054\040\060\056\063\065" + "\051\054\040\060\040\062\160\170\040\064\160\170\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151\156" + "\145\055\143\157\154\157\162\072\040\162\147\142\141\050\060\054" + "\040\060\054\040\060\054\040\060\056\065\051\073\040\175\012\012" + "\163\143\141\154\145\056\146\151\156\145\055\164\165\156\145\040" + "\173\040\160\141\144\144\151\156\147\072\040\071\160\170\073\040" + "\175\012\012\163\143\141\154\145\056\146\151\156\145\055\164\165" + "\156\145\056\150\157\162\151\172\157\156\164\141\154\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\061\066\160\170" + "\073\040\175\012\012\163\143\141\154\145\056\146\151\156\145\055" + "\164\165\156\145\056\166\145\162\164\151\143\141\154\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\061\066\160\170\073" + "\040\175\012\012\163\143\141\154\145\056\146\151\156\145\055\164" + "\165\156\145\040\076\040\164\162\157\165\147\150\040\076\040\163" + "\154\151\144\145\162\040\173\040\155\141\162\147\151\156\072\040" + "\055\065\160\170\073\040\175\012\012\163\143\141\154\145\056\155" + "\141\162\153\163\055\142\145\146\157\162\145\072\156\157\164\050" + "\056\155\141\162\153\163\055\141\146\164\145\162\051\040\076\040" + "\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162\054" + "\040\163\143\141\154\145\056\155\141\162\153\163\055\141\146\164" + "\145\162\072\156\157\164\050\056\155\141\162\153\163\055\142\145" + "\146\157\162\145\051\040\076\040\164\162\157\165\147\150\040\076" + "\040\163\154\151\144\145\162\040\173\040\164\162\141\156\163\146" + "\157\162\155\072\040\162\157\164\141\164\145\050\064\065\144\145" + "\147\051\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\060\040\060\040\060\040\061\160\170\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\063\065\051\054\040\061" + "\160\170\040\061\160\170\040\064\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\062\051\073\040\175" + "\012\012\163\143\141\154\145\056\155\141\162\153\163\055\142\145" + "\146\157\162\145\072\156\157\164\050\056\155\141\162\153\163\055" + "\141\146\164\145\162\051\040\076\040\164\162\157\165\147\150\040" + "\076\040\163\154\151\144\145\162\072\144\151\163\141\142\154\145" + "\144\054\040\163\143\141\154\145\056\155\141\162\153\163\055\141" + "\146\164\145\162\072\156\157\164\050\056\155\141\162\153\163\055" + "\142\145\146\157\162\145\051\040\076\040\164\162\157\165\147\150" + "\040\076\040\163\154\151\144\145\162\072\144\151\163\141\142\154" + "\145\144\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\060\040\060\040\060\040\061\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\063\065\051\054\040" + "\061\160\170\040\061\160\170\040\064\160\170\040\164\162\141\156" + "\163\160\141\162\145\156\164\073\040\175\012\012\163\143\141\154" + "\145\056\150\157\162\151\172\157\156\164\141\154\040\076\040\155" + "\141\162\153\163\040\173\040\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\071\051\073\040\175\012\012\163\143\141\154\145\056" + "\150\157\162\151\172\157\156\164\141\154\040\076\040\155\141\162" + "\153\163\056\164\157\160\040\173\040\155\141\162\147\151\156\055" + "\142\157\164\164\157\155\072\040\066\160\170\073\040\175\012\012" + "\163\143\141\154\145\056\150\157\162\151\172\157\156\164\141\154" + "\040\076\040\155\141\162\153\163\056\142\157\164\164\157\155\040" + "\173\040\155\141\162\147\151\156\055\164\157\160\072\040\066\160" + "\170\073\040\175\012\012\163\143\141\154\145\056\150\157\162\151" + "\172\157\156\164\141\154\040\076\040\155\141\162\153\163\040\151" + "\156\144\151\143\141\164\157\162\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\143\165\162" + "\162\145\156\164\103\157\154\157\162\073\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\066\160\170\073\040\155\151\156\055" + "\167\151\144\164\150\072\040\061\160\170\073\040\175\012\012\163" + "\143\141\154\145\056\150\157\162\151\172\157\156\164\141\154\040" + "\076\040\166\141\154\165\145\056\154\145\146\164\040\173\040\155" + "\141\162\147\151\156\055\162\151\147\150\164\072\040\071\160\170" + "\073\040\175\012\012\163\143\141\154\145\056\150\157\162\151\172" + "\157\156\164\141\154\040\076\040\166\141\154\165\145\056\162\151" + "\147\150\164\040\173\040\155\141\162\147\151\156\055\154\145\146" + "\164\072\040\071\160\170\073\040\175\012\012\163\143\141\154\145" + "\056\150\157\162\151\172\157\156\164\141\154\056\146\151\156\145" + "\055\164\165\156\145\040\076\040\155\141\162\153\163\056\164\157" + "\160\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\063\160\170\073\040\175\012\012\163\143\141\154\145\056\150\157" + "\162\151\172\157\156\164\141\154\056\146\151\156\145\055\164\165" + "\156\145\040\076\040\155\141\162\153\163\056\142\157\164\164\157" + "\155\040\173\040\155\141\162\147\151\156\055\142\157\164\164\157" + "\155\072\040\063\160\170\073\040\175\012\012\163\143\141\154\145" + "\056\150\157\162\151\172\157\156\164\141\154\056\146\151\156\145" + "\055\164\165\156\145\040\076\040\155\141\162\153\163\040\151\156" + "\144\151\143\141\164\157\162\040\173\040\155\151\156\055\150\145" + "\151\147\150\164\072\040\063\160\170\073\040\175\012\012\163\143" + "\141\154\145\056\150\157\162\151\172\157\156\164\141\154\056\155" + "\141\162\153\163\055\142\145\146\157\162\145\040\173\040\160\141" + "\144\144\151\156\147\055\164\157\160\072\040\060\073\040\175\012" + "\012\163\143\141\154\145\056\150\157\162\151\172\157\156\164\141" + "\154\056\155\141\162\153\163\055\142\145\146\157\162\145\040\076" + "\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\060\073\040\175\012" + "\012\163\143\141\154\145\056\150\157\162\151\172\157\156\164\141" + "\154\056\155\141\162\153\163\055\141\146\164\145\162\040\173\040" + "\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040" + "\060\073\040\175\012\012\163\143\141\154\145\056\150\157\162\151" + "\172\157\156\164\141\154\056\155\141\162\153\163\055\141\146\164" + "\145\162\040\076\040\164\162\157\165\147\150\040\076\040\163\154" + "\151\144\145\162\040\173\040\142\157\162\144\145\162\055\142\157" + "\164\164\157\155\055\162\151\147\150\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\175\012\012\163\143\141\154\145\056\150" + "\157\162\151\172\157\156\164\141\154\056\155\141\162\153\163\055" + "\142\145\146\157\162\145\056\155\141\162\153\163\055\141\146\164" + "\145\162\040\076\040\164\162\157\165\147\150\040\076\040\163\154" + "\151\144\145\162\040\173\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\061\060\060\045\073\040\175\012\012\163" + "\143\141\154\145\056\166\145\162\164\151\143\141\154\040\076\040" + "\155\141\162\153\163\040\173\040\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\071\051\073\040\175\012\012\163\143\141\154\145" + "\056\166\145\162\164\151\143\141\154\040\076\040\155\141\162\153" + "\163\056\164\157\160\040\173\040\155\141\162\147\151\156\055\162" + "\151\147\150\164\072\040\066\160\170\073\040\175\012\012\163\143" + "\141\154\145\056\166\145\162\164\151\143\141\154\040\076\040\155" + "\141\162\153\163\056\142\157\164\164\157\155\040\173\040\155\141" + "\162\147\151\156\055\154\145\146\164\072\040\066\160\170\073\040" + "\175\012\012\163\143\141\154\145\056\166\145\162\164\151\143\141" + "\154\040\076\040\155\141\162\153\163\040\151\156\144\151\143\141" + "\164\157\162\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103" + "\157\154\157\162\073\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\061\160\170\073\040\155\151\156\055\167\151\144\164\150" + "\072\040\066\160\170\073\040\175\012\012\163\143\141\154\145\056" + "\166\145\162\164\151\143\141\154\040\076\040\166\141\154\165\145" + "\056\164\157\160\040\173\040\155\141\162\147\151\156\055\142\157" + "\164\164\157\155\072\040\071\160\170\073\040\175\012\012\163\143" + "\141\154\145\056\166\145\162\164\151\143\141\154\040\076\040\166" + "\141\154\165\145\056\142\157\164\164\157\155\040\173\040\155\141" + "\162\147\151\156\055\164\157\160\072\040\071\160\170\073\040\175" + "\012\012\163\143\141\154\145\056\166\145\162\164\151\143\141\154" + "\056\146\151\156\145\055\164\165\156\145\040\076\040\155\141\162" + "\153\163\056\164\157\160\040\173\040\155\141\162\147\151\156\055" + "\154\145\146\164\072\040\063\160\170\073\040\175\012\012\163\143" + "\141\154\145\056\166\145\162\164\151\143\141\154\056\146\151\156" + "\145\055\164\165\156\145\040\076\040\155\141\162\153\163\056\142" + "\157\164\164\157\155\040\173\040\155\141\162\147\151\156\055\162" + "\151\147\150\164\072\040\063\160\170\073\040\175\012\012\163\143" + "\141\154\145\056\166\145\162\164\151\143\141\154\056\146\151\156" + "\145\055\164\165\156\145\040\076\040\155\141\162\153\163\040\151" + "\156\144\151\143\141\164\157\162\040\173\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\063\160\170\073\040\175\012\012\163" + "\143\141\154\145\056\166\145\162\164\151\143\141\154\056\155\141" + "\162\153\163\055\142\145\146\157\162\145\040\173\040\160\141\144" + "\144\151\156\147\055\154\145\146\164\072\040\060\073\040\175\012" + "\012\163\143\141\154\145\056\166\145\162\164\151\143\141\154\056" + "\155\141\162\153\163\055\142\145\146\157\162\145\040\076\040\164" + "\162\157\165\147\150\040\076\040\163\154\151\144\145\162\040\173" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\154" + "\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040\175" + "\012\012\163\143\141\154\145\056\166\145\162\164\151\143\141\154" + "\056\155\141\162\153\163\055\141\146\164\145\162\040\173\040\160" + "\141\144\144\151\156\147\055\162\151\147\150\164\072\040\060\073" + "\040\175\012\012\163\143\141\154\145\056\166\145\162\164\151\143" + "\141\154\056\155\141\162\153\163\055\141\146\164\145\162\040\076" + "\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\055\162\151" + "\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040\175" + "\012\012\163\143\141\154\145\056\143\157\154\157\162\040\173\040" + "\160\141\144\144\151\156\147\072\040\060\073\040\175\012\012\163" + "\143\141\154\145\056\143\157\154\157\162\040\076\040\164\162\157" + "\165\147\150\040\173\040\142\157\162\144\145\162\072\040\156\157" + "\156\145\073\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\156\157\156\145\073\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\061\060\160\170\073\040\175\012\012\163\143" + "\141\154\145\056\143\157\154\157\162\040\076\040\164\162\157\165" + "\147\150\040\076\040\163\154\151\144\145\162\040\173\040\155\141" + "\162\147\151\156\072\040\060\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\162\147\142\141\050" + "\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040\060" + "\056\070\051\073\040\175\012\012\163\143\141\154\145\056\143\157" + "\154\157\162\056\146\151\156\145\055\164\165\156\145\040\173\040" + "\160\141\144\144\151\156\147\072\040\062\160\170\073\040\175\012" + "\012\163\143\141\154\145\056\143\157\154\157\162\056\146\151\156" + "\145\055\164\165\156\145\040\076\040\164\162\157\165\147\150\040" + "\076\040\163\154\151\144\145\162\040\173\040\155\141\162\147\151" + "\156\072\040\055\062\160\170\073\040\175\012\012\163\143\162\157" + "\154\154\142\141\162\040\076\040\162\141\156\147\145\040\076\040" + "\164\162\157\165\147\150\040\173\040\155\141\162\147\151\156\072" + "\040\067\160\170\073\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\141\154\154\040\062\060\060\155\163\040\154\151\156\145" + "\141\162\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\061\060\160\170\073\040\175\012\012\163\143\162\157" + "\154\154\142\141\162\040\076\040\162\141\156\147\145\040\076\040" + "\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162\040" + "\173\040\155\151\156\055\167\151\144\164\150\072\040\070\160\170" + "\073\040\155\151\156\055\150\145\151\147\150\164\072\040\070\160" + "\170\073\040\155\141\162\147\151\156\072\040\055\066\160\170\073" + "\040\142\157\162\144\145\162\072\040\066\160\170\040\163\157\154" + "\151\144\040\164\162\141\156\163\160\141\162\145\156\164\073\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\061" + "\060\160\170\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\154\151\160\072\040\160\141\144\144\151\156\147\055\142\157" + "\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040\141" + "\154\154\040\062\060\060\155\163\040\154\151\156\145\141\162\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\064\051\073\040\175\012\012\163" + "\143\162\157\154\154\142\141\162\040\076\040\162\141\156\147\145" + "\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144" + "\145\162\072\150\157\166\145\162\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\066\051\073\040\175\012\012\163\143\162\157\154\154\142" + "\141\162\040\076\040\162\141\156\147\145\040\076\040\164\162\157" + "\165\147\150\040\076\040\163\154\151\144\145\162\072\141\143\164" + "\151\166\145\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103" + "\157\154\157\162\073\040\175\012\012\163\143\162\157\154\154\142" + "\141\162\040\076\040\162\141\156\147\145\040\076\040\164\162\157" + "\165\147\150\040\076\040\163\154\151\144\145\162\072\144\151\163" + "\141\142\154\145\144\040\173\040\157\160\141\143\151\164\171\072" + "\040\060\073\040\175\012\012\163\143\162\157\154\154\142\141\162" + "\056\150\157\162\151\172\157\156\164\141\154\040\076\040\162\141" + "\156\147\145\040\076\040\164\162\157\165\147\150\040\173\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\066\160\170\073\040" + "\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040\066" + "\160\170\073\040\175\012\012\163\143\162\157\154\154\142\141\162" + "\056\166\145\162\164\151\143\141\154\040\076\040\162\141\156\147" + "\145\040\076\040\164\162\157\165\147\150\040\173\040\155\141\162" + "\147\151\156\055\154\145\146\164\072\040\066\160\170\073\040\155" + "\141\162\147\151\156\055\162\151\147\150\164\072\040\066\160\170" + "\073\040\175\012\012\163\143\162\157\154\154\142\141\162\056\157" + "\166\145\162\154\141\171\055\151\156\144\151\143\141\164\157\162" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\143\157\154\157\162\072\040\151\156\150\145" + "\162\151\164\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\160\141\144\144\151\156\147\072\040" + "\060\073\040\175\012\012\163\143\162\157\154\154\142\141\162\056" + "\157\166\145\162\154\141\171\055\151\156\144\151\143\141\164\157" + "\162\040\076\040\162\141\156\147\145\040\076\040\164\162\157\165" + "\147\150\040\173\040\157\165\164\154\151\156\145\072\040\061\160" + "\170\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\175\012\012\163\143\162\157\154\154\142\141" + "\162\056\157\166\145\162\154\141\171\055\151\156\144\151\143\141" + "\164\157\162\040\076\040\162\141\156\147\145\040\076\040\164\162" + "\157\165\147\150\040\076\040\163\154\151\144\145\162\040\173\040" + "\157\165\164\154\151\156\145\072\040\061\160\170\040\163\157\154" + "\151\144\040\100\163\143\162\157\154\154\142\141\162\137\157\165" + "\164\154\151\156\145\137\143\157\154\157\162\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\055\066\160" + "\170\073\040\175\012\012\056\157\163\144\040\163\143\162\157\154" + "\154\142\141\162\056\157\166\145\162\154\141\171\055\151\156\144" + "\151\143\141\164\157\162\040\076\040\162\141\156\147\145\040\076" + "\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162" + "\040\173\040\157\165\164\154\151\156\145\072\040\061\160\170\040" + "\163\157\154\151\144\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\065\051\073\040\175\012\012\163\143\162" + "\157\154\154\142\141\162\056\157\166\145\162\154\141\171\055\151" + "\156\144\151\143\141\164\157\162\072\156\157\164\050\056\150\157" + "\166\145\162\151\156\147\051\040\076\040\162\141\156\147\145\040" + "\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145" + "\162\040\173\040\155\151\156\055\167\151\144\164\150\072\040\063" + "\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\063\160\170\073\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\100\163\143\162\157\154" + "\154\142\141\162\137\157\165\164\154\151\156\145\137\143\157\154" + "\157\162\054\060\056\066\051\073\040\175\012\012\056\157\163\144" + "\040\163\143\162\157\154\154\142\141\162\056\157\166\145\162\154" + "\141\171\055\151\156\144\151\143\141\164\157\162\072\156\157\164" + "\050\056\150\157\166\145\162\151\156\147\051\040\076\040\162\141" + "\156\147\145\040\076\040\164\162\157\165\147\150\040\076\040\163" + "\154\151\144\145\162\040\173\040\157\165\164\154\151\156\145\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\162\147\142" + "\141\050\060\054\040\060\054\040\060\054\040\060\056\065\051\054" + "\060\056\066\051\073\040\175\012\012\163\143\162\157\154\154\142" + "\141\162\056\157\166\145\162\154\141\171\055\151\156\144\151\143" + "\141\164\157\162\056\150\157\166\145\162\151\156\147\040\076\040" + "\162\141\156\147\145\040\076\040\164\162\157\165\147\150\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\062\065\051\073\040\175\012\012" + "\163\143\162\157\154\154\142\141\162\056\157\166\145\162\154\141" + "\171\055\151\156\144\151\143\141\164\157\162\056\150\157\162\151" + "\172\157\156\164\141\154\040\076\040\162\141\156\147\145\040\076" + "\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162" + "\040\173\040\155\151\156\055\167\151\144\164\150\072\040\064\060" + "\160\170\073\040\175\012\012\163\143\162\157\154\154\142\141\162" + "\056\157\166\145\162\154\141\171\055\151\156\144\151\143\141\164" + "\157\162\056\150\157\162\151\172\157\156\164\141\154\056\150\157" + "\166\145\162\151\156\147\040\076\040\162\141\156\147\145\040\076" + "\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162" + "\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040\070" + "\160\170\073\040\175\012\012\163\143\162\157\154\154\142\141\162" + "\056\157\166\145\162\154\141\171\055\151\156\144\151\143\141\164" + "\157\162\056\150\157\162\151\172\157\156\164\141\154\072\156\157" + "\164\050\056\150\157\166\145\162\151\156\147\051\040\076\040\162" + "\141\156\147\145\040\076\040\164\162\157\165\147\150\040\173\040" + "\155\141\162\147\151\156\055\164\157\160\072\040\063\160\170\073" + "\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040" + "\063\160\170\073\040\175\012\012\163\143\162\157\154\154\142\141" + "\162\056\157\166\145\162\154\141\171\055\151\156\144\151\143\141" + "\164\157\162\056\166\145\162\164\151\143\141\154\040\076\040\162" + "\141\156\147\145\040\076\040\164\162\157\165\147\150\040\076\040" + "\163\154\151\144\145\162\040\173\040\155\151\156\055\150\145\151" + "\147\150\164\072\040\064\060\160\170\073\040\175\012\012\163\143" + "\162\157\154\154\142\141\162\056\157\166\145\162\154\141\171\055" + "\151\156\144\151\143\141\164\157\162\056\166\145\162\164\151\143" + "\141\154\056\150\157\166\145\162\151\156\147\040\076\040\162\141" + "\156\147\145\040\076\040\164\162\157\165\147\150\040\076\040\163" + "\154\151\144\145\162\040\173\040\155\151\156\055\167\151\144\164" + "\150\072\040\070\160\170\073\040\175\012\012\163\143\162\157\154" + "\154\142\141\162\056\157\166\145\162\154\141\171\055\151\156\144" + "\151\143\141\164\157\162\056\166\145\162\164\151\143\141\154\072" + "\156\157\164\050\056\150\157\166\145\162\151\156\147\051\040\076" + "\040\162\141\156\147\145\040\076\040\164\162\157\165\147\150\040" + "\173\040\155\141\162\147\151\156\055\154\145\146\164\072\040\063" + "\160\170\073\040\155\141\162\147\151\156\055\162\151\147\150\164" + "\072\040\063\160\170\073\040\175\012\012\163\143\162\157\154\154" + "\142\141\162\056\150\157\162\151\172\157\156\164\141\154\040\076" + "\040\162\141\156\147\145\040\076\040\164\162\157\165\147\150\040" + "\076\040\163\154\151\144\145\162\040\173\040\155\151\156\055\167" + "\151\144\164\150\072\040\064\060\160\170\073\040\175\012\012\163" + "\143\162\157\154\154\142\141\162\056\166\145\162\164\151\143\141" + "\154\040\076\040\162\141\156\147\145\040\076\040\164\162\157\165" + "\147\150\040\076\040\163\154\151\144\145\162\040\173\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\064\060\160\170\073\040" + "\175\012\012\163\143\162\157\154\154\142\141\162\040\076\040\162" + "\141\156\147\145\056\146\151\156\145\055\164\165\156\145\040\076" + "\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162" + "\054\040\163\143\162\157\154\154\142\141\162\040\076\040\162\141" + "\156\147\145\056\146\151\156\145\055\164\165\156\145\040\076\040" + "\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162\072" + "\150\157\166\145\162\054\040\163\143\162\157\154\154\142\141\162" + "\040\076\040\162\141\156\147\145\056\146\151\156\145\055\164\165" + "\156\145\040\076\040\164\162\157\165\147\150\040\076\040\163\154" + "\151\144\145\162\072\141\143\164\151\166\145\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\100\141\143\143\145\156\164\137\143\157\154\157\162\073\040\175" + "\012\012\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\040\076\040\157\166\145\162\163\150\157\157\164\056\164\157\160" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\162\141\144\151\141\154\055\147\162\141\144" + "\151\145\156\164\050\146\141\162\164\150\145\163\164\055\163\151" + "\144\145\040\141\164\040\164\157\160\054\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\061\062\051\040\070\065\045\054\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\051\051\054" + "\040\162\141\144\151\141\154\055\147\162\141\144\151\145\156\164" + "\050\146\141\162\164\150\145\163\164\055\163\151\144\145\040\141" + "\164\040\164\157\160\054\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\060\065\051\054" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\051\051\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\163\151\172\145\072\040\061\060\060\045\040\063" + "\045\054\040\061\060\060\045\040\065\060\045\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\162\145\160\145\141\164\072\040" + "\156\157\055\162\145\160\145\141\164\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\160\157\163\151\164\151\157\156\072\040" + "\164\157\160\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\142\157\162\144\145\162\072\040\156\157\156\145" + "\073\040\142\157\170\055\163\150\141\144\157\167\072\040\156\157" + "\156\145\073\040\175\012\012\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\040\076\040\157\166\145\162\163\150\157\157" + "\164\056\142\157\164\164\157\155\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\162\141\144" + "\151\141\154\055\147\162\141\144\151\145\156\164\050\146\141\162" + "\164\150\145\163\164\055\163\151\144\145\040\141\164\040\142\157" + "\164\164\157\155\054\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\062\051\040\070" + "\065\045\054\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\051\051\054\040\162\141\144\151" + "\141\154\055\147\162\141\144\151\145\156\164\050\146\141\162\164" + "\150\145\163\164\055\163\151\144\145\040\141\164\040\142\157\164" + "\164\157\155\054\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\060\065\051\054\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\051\051\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\163\151\172\145\072\040\061\060\060\045\040\063\045\054" + "\040\061\060\060\045\040\065\060\045\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\162\145\160\145\141\164\072\040\156\157" + "\055\162\145\160\145\141\164\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\160\157\163\151\164\151\157\156\072\040\142\157" + "\164\164\157\155\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\142\157\162\144\145\162\072\040\156\157\156" + "\145\073\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\175\012\012\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\040\076\040\157\166\145\162\163\150\157" + "\157\164\056\154\145\146\164\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\162\141\144\151" + "\141\154\055\147\162\141\144\151\145\156\164\050\146\141\162\164" + "\150\145\163\164\055\163\151\144\145\040\141\164\040\154\145\146" + "\164\054\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\061\062\051\040\070\065\045\054" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\051\051\054\040\162\141\144\151\141\154\055" + "\147\162\141\144\151\145\156\164\050\146\141\162\164\150\145\163" + "\164\055\163\151\144\145\040\141\164\040\154\145\146\164\054\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\060\065\051\054\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\051\051" + "\073\040\142\141\143\153\147\162\157\165\156\144\055\163\151\172" + "\145\072\040\063\045\040\061\060\060\045\054\040\065\060\045\040" + "\061\060\060\045\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\162\145\160\145\141\164\072\040\156\157\055\162\145\160\145" + "\141\164\073\040\142\141\143\153\147\162\157\165\156\144\055\160" + "\157\163\151\164\151\157\156\072\040\154\145\146\164\073\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\164\162\141\156\163\160\141\162\145\156\164\073\040\142\157" + "\162\144\145\162\072\040\156\157\156\145\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\156\157\156\145\073\040\175\012" + "\012\163\143\162\157\154\154\145\144\167\151\156\144\157\167\040" + "\076\040\157\166\145\162\163\150\157\157\164\056\162\151\147\150" + "\164\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151" + "\155\141\147\145\072\040\162\141\144\151\141\154\055\147\162\141" + "\144\151\145\156\164\050\146\141\162\164\150\145\163\164\055\163" + "\151\144\145\040\141\164\040\162\151\147\150\164\054\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\062\051\040\070\065\045\054\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\051\051\054\040\162\141\144\151\141\154\055\147\162\141\144\151" + "\145\156\164\050\146\141\162\164\150\145\163\164\055\163\151\144" + "\145\040\141\164\040\162\151\147\150\164\054\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\060\065\051\054\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\051\051\073\040\142\141" + "\143\153\147\162\157\165\156\144\055\163\151\172\145\072\040\063" + "\045\040\061\060\060\045\054\040\065\060\045\040\061\060\060\045" + "\073\040\142\141\143\153\147\162\157\165\156\144\055\162\145\160" + "\145\141\164\072\040\156\157\055\162\145\160\145\141\164\073\040" + "\142\141\143\153\147\162\157\165\156\144\055\160\157\163\151\164" + "\151\157\156\072\040\162\151\147\150\164\073\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\164\162" + "\141\156\163\160\141\162\145\156\164\073\040\142\157\162\144\145" + "\162\072\040\156\157\156\145\073\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\156\157\156\145\073\040\175\012\012\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\056\165\156\144" + "\145\162\163\150\157\157\164\055\164\157\160\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\164\157\160\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\061\160\170\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\142" + "\157\164\164\157\155\054\040\141\154\160\150\141\050\100\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054" + "\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170" + "\051\073\040\175\012\012\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\056\165\156\144\145\162\163\150\157\157\164\055" + "\142\157\164\164\157\155\040\076\040\165\156\144\145\162\163\150" + "\157\157\164\056\142\157\164\164\157\155\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\055\061\160\170\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\164\157" + "\160\054\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162\141" + "\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040\175" + "\012\012\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\056\165\156\144\145\162\163\150\157\157\164\055\163\164\141\162" + "\164\072\144\151\162\050\154\164\162\051\040\076\040\165\156\144" + "\145\162\163\150\157\157\164\056\154\145\146\164\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\061\160\170\040\060\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162" + "\151\147\150\164\054\040\141\154\160\150\141\050\100\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040" + "\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051" + "\073\040\175\012\012\163\143\162\157\154\154\145\144\167\151\156" + "\144\157\167\056\165\156\144\145\162\163\150\157\157\164\055\163" + "\164\141\162\164\072\144\151\162\050\162\164\154\051\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\162\151\147\150\164" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\055\061\160\170\040\060\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\154\145\146\164\054\040\141\154\160\150\141\050" + "\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\065\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040" + "\064\160\170\051\073\040\175\012\012\163\143\162\157\154\154\145" + "\144\167\151\156\144\157\167\056\165\156\144\145\162\163\150\157" + "\157\164\055\145\156\144\072\144\151\162\050\154\164\162\051\040" + "\076\040\165\156\144\145\162\163\150\157\157\164\056\162\151\147" + "\150\164\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\055\061\160\170\040\060\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\065\051\073\040\142\141\143\153\147\162\157\165\156" + "\144\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145" + "\156\164\050\164\157\040\154\145\146\164\054\040\141\154\160\150" + "\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145\156" + "\164\040\064\160\170\051\073\040\175\012\012\163\143\162\157\154" + "\154\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163" + "\150\157\157\164\055\145\156\144\072\144\151\162\050\162\164\154" + "\051\040\076\040\165\156\144\145\162\163\150\157\157\164\056\154" + "\145\146\164\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\151\156\163\145\164\040\061\160\170\040\060\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\065\051\073\040\142\141\143\153\147\162\157\165\156" + "\144\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145" + "\156\164\050\164\157\040\162\151\147\150\164\054\040\141\154\160" + "\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\040\064\160\170\051\073\040\175\012\012\163\150\157\162" + "\164\143\165\164\163\055\163\145\143\164\151\157\156\040\173\040" + "\155\141\162\147\151\156\072\040\062\060\160\170\073\040\175\012" + "\012\056\163\150\157\162\164\143\165\164\163\055\163\145\141\162" + "\143\150\055\162\145\163\165\154\164\163\040\173\040\155\141\162" + "\147\151\156\072\040\062\060\160\170\073\040\142\157\162\144\145" + "\162\055\163\160\141\143\151\156\147\072\040\062\064\160\170\073" + "\040\175\012\012\163\150\157\162\164\143\165\164\040\173\040\142" + "\157\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066" + "\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\066\160\170\073\040\175\012\012\163\150\157\162\164" + "\143\165\164\040\173\040\157\165\164\154\151\156\145\072\040\060" + "\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\070\160\170\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\073\040\175\012\012\163\150\157\162\164\143\165\164\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\040\173\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145" + "\156\164\137\143\157\154\157\162\054\060\056\070\051\073\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\072\040\062\160" + "\170\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\064\160\170\073\040\175\012\012\163\150\157\162\164" + "\143\165\164\040\076\040\056\153\145\171\143\141\160\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\062\060\160\170\073" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\062\065\160" + "\170\073\040\160\141\144\144\151\156\147\072\040\062\160\170\040" + "\066\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\066\160\170\073\040\146\157\156\164\055\163\151" + "\172\145\072\040\163\155\141\154\154\145\162\073\040\175\012\012" + "\163\150\157\162\164\143\165\164\163\055\163\145\143\164\151\157" + "\156\040\163\164\141\143\153\163\167\151\164\143\150\145\162\056" + "\143\151\162\143\165\154\141\162\040\173\040\142\157\162\144\145" + "\162\055\163\160\141\143\151\156\147\072\040\061\062\160\170\073" + "\040\175\012\012\163\150\157\162\164\143\165\164\163\055\163\145" + "\143\164\151\157\156\040\163\164\141\143\153\163\167\151\164\143" + "\150\145\162\056\143\151\162\143\165\154\141\162\040\076\040\142" + "\165\164\164\157\156\056\143\151\162\143\165\154\141\162\054\040" + "\163\150\157\162\164\143\165\164\163\055\163\145\143\164\151\157" + "\156\040\163\164\141\143\153\163\167\151\164\143\150\145\162\056" + "\143\151\162\143\165\154\141\162\040\076\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\143\151" + "\162\143\165\154\141\162\040\173\040\155\151\156\055\167\151\144" + "\164\150\072\040\063\062\160\170\073\040\155\151\156\055\150\145" + "\151\147\150\164\072\040\063\062\160\170\073\040\160\141\144\144" + "\151\156\147\072\040\060\073\040\175\012\012\167\151\156\144\157" + "\167\056\163\150\157\162\164\143\165\164\163\040\150\145\141\144" + "\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\040\173\040" + "\160\141\144\144\151\156\147\055\164\157\160\072\040\063\160\170" + "\073\040\175\012\012\167\151\156\144\157\167\056\163\150\157\162" + "\164\143\165\164\163\040\163\145\141\162\143\150\142\141\162\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156\157" + "\156\145\073\040\175\012\012\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\163\151\144\145\142\141" + "\162\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157" + "\162\072\040\100\163\151\144\145\142\141\162\137\146\147\137\143" + "\157\154\157\162\073\040\175\012\012\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\072\142\141\143\153\144\162\157\160\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\100\163\151\144\145\142\141\162\137\142\141\143" + "\153\144\162\157\160\137\143\157\154\157\162\073\040\164\162\141" + "\156\163\151\164\151\157\156\072\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\040\062\060\060\155\163\040" + "\145\141\163\145\055\157\165\164\073\040\175\012\012\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\164\157\157\154\142" + "\141\162\166\151\145\167\056\165\156\144\145\162\163\150\157\157" + "\164\055\164\157\160\040\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\164\157\160\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\061\160\170\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\065\051\073\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\142\157\164\164\157\155\054\040" + "\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\164\157\157\154\142\141\162\166\151\145\167" + "\056\165\156\144\145\162\163\150\157\157\164\055\142\157\164\164" + "\157\155\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\040\076\040\165\156\144\145\162\163\150\157\157\164\056\142" + "\157\164\164\157\155\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\055\061\160\170" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\164\157\160\054\040\141\154" + "\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040" + "\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051" + "\073\040\175\012\012\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\056\165\156\144\145\162\163\150\157\157\164\055\164\157\160" + "\040\076\040\165\156\144\145\162\163\150\157\157\164\056\164\157" + "\160\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\142\157\164\164\157\155\054\040\141\154\160\150" + "\141\050\100\163\151\144\145\142\141\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162" + "\141\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040" + "\175\012\012\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056" + "\165\156\144\145\162\163\150\157\157\164\055\142\157\164\164\157" + "\155\040\076\040\165\156\144\145\162\163\150\157\157\164\056\142" + "\157\164\164\157\155\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\055\061\160\170" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\164\157\160\054\040\141\154" + "\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040" + "\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051" + "\073\040\175\012\012\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\056\165\156\144\145\162\163\150\157\157\164\055\163\164\141" + "\162\164\072\144\151\162\050\154\164\162\051\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\154\145\146\164\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\061\160\170\040\060\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156" + "\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040" + "\162\151\147\150\164\054\040\141\154\160\150\141\050\100\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\065\051\054\040\164\162\141\156\163\160\141" + "\162\145\156\164\040\064\160\170\051\073\040\175\012\012\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\163\143\162\157" + "\154\154\145\144\167\151\156\144\157\167\056\165\156\144\145\162" + "\163\150\157\157\164\055\163\164\141\162\164\072\144\151\162\050" + "\162\164\154\051\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\162\151\147\150\164\040\173\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\151\156\163\145\164\040\055\061\160\170" + "\040\060\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147" + "\162\141\144\151\145\156\164\050\164\157\040\154\145\146\164\054" + "\040\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065" + "\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064" + "\160\170\051\073\040\175\012\012\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\056\165\156\144\145\162\163\150\157\157\164\055" + "\145\156\144\072\144\151\162\050\154\164\162\051\040\076\040\165" + "\156\144\145\162\163\150\157\157\164\056\162\151\147\150\164\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\055\061\160\170\040\060\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\154\145\146\164\054\040\141\154\160\150\141\050\100" + "\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\065\051\054\040\164\162\141\156\163" + "\160\141\162\145\156\164\040\064\160\170\051\073\040\175\012\012" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\056\165\156\144" + "\145\162\163\150\157\157\164\055\145\156\144\072\144\151\162\050" + "\162\164\154\051\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\154\145\146\164\040\173\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\151\156\163\145\164\040\061\160\170\040\060" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\162\151\147\150\164\054\040" + "\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\146\154\141\160\040\076\040\144\151\155\155" + "\151\156\147\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\154\145\141\146\154\145\164\040\076\040\144\151\155" + "\155\151\156\147\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\156\141\166\151\147\141\164\151\157\156\055\166" + "\151\145\167\040\076\040\144\151\155\155\151\156\147\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\157\166\145" + "\162\154\141\171\055\163\160\154\151\164\055\166\151\145\167\040" + "\076\040\144\151\155\155\151\156\147\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\100\163\151\144\145\142\141\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\073\040\175\012" + "\012\056\163\151\144\145\142\141\162\055\160\141\156\145\040\146" + "\154\141\160\040\076\040\142\157\162\144\145\162\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\154\145\141\146" + "\154\145\164\040\076\040\142\157\162\144\145\162\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\156\141\166\151" + "\147\141\164\151\157\156\055\166\151\145\167\040\076\040\142\157" + "\162\144\145\162\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\157\166\145\162\154\141\171\055\163\160\154\151" + "\164\055\166\151\145\167\040\076\040\142\157\162\144\145\162\040" + "\173\040\155\151\156\055\167\151\144\164\150\072\040\061\160\170" + "\073\040\155\151\156\055\150\145\151\147\150\164\072\040\061\160" + "\170\073\040\142\141\143\153\147\162\157\165\156\144\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\065\051\073\040\175\012\012\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\040\146\154\141\160\040\076\040" + "\163\150\141\144\157\167\054\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\154\145\141\146\154\145\164\040\076\040" + "\163\150\141\144\157\167\054\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\156\141\166\151\147\141\164\151\157\156" + "\055\166\151\145\167\040\076\040\163\150\141\144\157\167\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\157\166" + "\145\162\154\141\171\055\163\160\154\151\164\055\166\151\145\167" + "\040\076\040\163\150\141\144\157\167\040\173\040\155\151\156\055" + "\167\151\144\164\150\072\040\065\066\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\065\066\160\170\073\040\175" + "\012\012\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\146\154\141\160\040\076\040\163\150\141\144\157\167\056\154\145" + "\146\164\054\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\154\145\141\146\154\145\164\040\076\040\163\150\141\144" + "\157\167\056\154\145\146\164\054\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\156\141\166\151\147\141\164\151\157" + "\156\055\166\151\145\167\040\076\040\163\150\141\144\157\167\056" + "\154\145\146\164\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\157\166\145\162\154\141\171\055\163\160\154\151" + "\164\055\166\151\145\167\040\076\040\163\150\141\144\157\167\056" + "\154\145\146\164\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\151\155\141\147\145\072\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\164\157\040\162\151\147\150" + "\164\054\040\141\154\160\150\141\050\100\163\151\144\145\142\141" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\067\051\054\040\141\154\160\150\141\050\100\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\061\064\051\040\064\060\160\170\054\040\141\154\160\150\141" + "\050\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\051\040\065\066\160\170\051\054\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\162\151\147\150\164\054\040\141\154\160\150\141\050" + "\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\064\051\054\040\141\154\160\150\141" + "\050\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\061\064\051\040\067\160\170\054" + "\040\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\051\040\062" + "\064\160\170\051\073\040\175\012\012\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\146\154\141\160\040\076\040\163\150" + "\141\144\157\167\056\162\151\147\150\164\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\154\145\141\146\154\145" + "\164\040\076\040\163\150\141\144\157\167\056\162\151\147\150\164" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\156\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040" + "\076\040\163\150\141\144\157\167\056\162\151\147\150\164\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\157\166" + "\145\162\154\141\171\055\163\160\154\151\164\055\166\151\145\167" + "\040\076\040\163\150\141\144\157\167\056\162\151\147\150\164\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\164\157\040\154\145\146\164\054\040\141\154\160" + "\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\067\051\054\040\141\154" + "\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040\064" + "\060\160\170\054\040\141\154\160\150\141\050\100\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\051\040\065\066\160\170\051\054\040\154\151\156\145\141\162" + "\055\147\162\141\144\151\145\156\164\050\164\157\040\154\145\146" + "\164\054\040\141\154\160\150\141\050\100\163\151\144\145\142\141" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\064\051\054\040\141\154\160\150\141\050\100\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\061\064\051\040\067\160\170\054\040\141\154\160\150\141\050" + "\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\051\040\062\064\160\170\051\073\040\175" + "\012\012\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\146\154\141\160\040\076\040\163\150\141\144\157\167\056\165\160" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\154\145\141\146\154\145\164\040\076\040\163\150\141\144\157\167" + "\056\165\160\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\156\141\166\151\147\141\164\151\157\156\055\166\151" + "\145\167\040\076\040\163\150\141\144\157\167\056\165\160\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\157\166" + "\145\162\154\141\171\055\163\160\154\151\164\055\166\151\145\167" + "\040\076\040\163\150\141\144\157\167\056\165\160\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\142\157\164\164\157\155\054\040\141\154\160\150" + "\141\050\100\163\151\144\145\142\141\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\067\051\054\040\141\154\160" + "\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\061\064\051\040\064\060" + "\160\170\054\040\141\154\160\150\141\050\100\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\051\040\065\066\160\170\051\054\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\164\157\040\142\157\164\164" + "\157\155\054\040\141\154\160\150\141\050\100\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\064\051\054\040\141\154\160\150\141\050\100\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\061\064\051\040\067\160\170\054\040\141\154\160\150\141" + "\050\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\051\040\062\064\160\170\051\073\040" + "\175\012\012\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\146\154\141\160\040\076\040\163\150\141\144\157\167\056\144" + "\157\167\156\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\154\145\141\146\154\145\164\040\076\040\163\150\141" + "\144\157\167\056\144\157\167\156\054\040\056\163\151\144\145\142" + "\141\162\055\160\141\156\145\040\156\141\166\151\147\141\164\151" + "\157\156\055\166\151\145\167\040\076\040\163\150\141\144\157\167" + "\056\144\157\167\156\054\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\157\166\145\162\154\141\171\055\163\160\154" + "\151\164\055\166\151\145\167\040\076\040\163\150\141\144\157\167" + "\056\144\157\167\156\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\151\155\141\147\145\072\040\154\151\156\145\141\162" + "\055\147\162\141\144\151\145\156\164\050\164\157\040\164\157\160" + "\054\040\141\154\160\150\141\050\100\163\151\144\145\142\141\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\051\054\040\141\154\160\150\141\050\100\163\151\144\145\142\141" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\061\064\051\040\064\060\160\170\054\040\141\154\160\150\141\050" + "\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\051\040\065\066\160\170\051\054\040\154" + "\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164" + "\157\040\164\157\160\054\040\141\154\160\150\141\050\100\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\064\051\054\040\141\154\160\150\141\050\100\163" + "\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\061\064\051\040\067\160\170\054\040\141\154" + "\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\051\040\062\064\160\170" + "\051\073\040\175\012\012\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\142\141\156\156\145\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\167\151\144\147\145\164\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\155\151\170\050\100\141\143\143\145\156\164\137\142" + "\147\137\143\157\154\157\162\054\100\163\151\144\145\142\141\162" + "\137\142\147\137\143\157\154\157\162\054\060\056\067\051\073\040" + "\143\157\154\157\162\072\040\100\163\151\144\145\142\141\162\137" + "\146\147\137\143\157\154\157\162\073\040\175\012\012\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\142\141\156\156\145" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\167" + "\151\144\147\145\164\072\142\141\143\153\144\162\157\160\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\155\151\170\050\100\141\143\143\145\156\164\137\142" + "\147\137\143\157\154\157\162\054\100\163\151\144\145\142\141\162" + "\137\142\141\143\153\144\162\157\160\137\143\157\154\157\162\054" + "\060\056\070\065\051\073\040\175\012\012\056\163\151\144\145\142" + "\141\162\055\160\141\156\145\072\144\151\162\050\154\164\162\051" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\072" + "\144\151\162\050\154\164\162\051\040\142\141\156\156\145\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\167\151\144" + "\147\145\164\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\056\145\156\144\072\144\151\162\050\162\164\154\051\054" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\056\145" + "\156\144\072\144\151\162\050\162\164\154\051\040\142\141\156\156" + "\145\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\167\151\144\147\145\164\040\173\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\151\156\163\145\164\040\055\061\160\170\040" + "\060\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\065\051\073\040\175\012\012\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\072\144\151\162\050" + "\162\164\154\051\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\072\144\151\162\050\162\164\154\051\040\142\141\156" + "\156\145\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\167\151\144\147\145\164\054\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\056\145\156\144\072\144\151\162\050\154" + "\164\162\051\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\056\145\156\144\072\144\151\162\050\154\164\162\051\040" + "\142\141\156\156\145\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\167\151\144\147\145\164\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\061" + "\160\170\040\060\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\065\051\073\040\175\012" + "\012\057\052\040\115\151\144\144\154\145\040\160\141\156\145\040" + "\151\156\040\164\150\162\145\145\055\160\141\156\145\040\163\145" + "\164\165\160\163\040\052\057\012\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\100\163\145\143\157\156\144\141\162\171\137" + "\163\151\144\145\142\141\162\137\142\147\137\143\157\154\157\162" + "\073\040\143\157\154\157\162\072\040\100\163\145\143\157\156\144" + "\141\162\171\137\163\151\144\145\142\141\162\137\146\147\137\143" + "\157\154\157\162\073\040\175\012\012\056\143\157\156\164\145\156" + "\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\072\142\141\143\153\144\162\157\160\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\072\142\141\143\153\144" + "\162\157\160\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\163\145\143\157\156\144\141" + "\162\171\137\163\151\144\145\142\141\162\137\142\141\143\153\144" + "\162\157\160\137\143\157\154\157\162\073\040\164\162\141\156\163" + "\151\164\151\157\156\072\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\040\062\060\060\155\163\040\145\141" + "\163\145\055\157\165\164\073\040\175\012\012\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\164\157\157\154\142\141\162\166\151" + "\145\167\056\165\156\144\145\162\163\150\157\157\164\055\164\157" + "\160\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\040\076\040\165\156\144\145\162\163\150\157\157\164\056\164\157" + "\160\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040\164" + "\157\157\154\142\141\162\166\151\145\167\056\165\156\144\145\162" + "\163\150\157\157\164\055\164\157\160\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\164\157\160\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\061\160\170\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\065\051\073\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\164\157\040\142\157\164\164" + "\157\155\054\040\141\154\160\150\141\050\100\163\145\143\157\156" + "\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040" + "\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051" + "\073\040\175\012\012\056\143\157\156\164\145\156\164\055\160\141" + "\156\145\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\164\157\157\154\142\141\162\166\151\145\167\056\165\156\144" + "\145\162\163\150\157\157\164\055\142\157\164\164\157\155\040\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\142\157\164\164\157" + "\155\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040\164" + "\157\157\154\142\141\162\166\151\145\167\056\165\156\144\145\162" + "\163\150\157\157\164\055\142\157\164\164\157\155\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\142\157\164\164\157\155\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\060\040\055\061\160\170\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\164\157\160\054\040\141\154\160\150\141\050\100\163" + "\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\065\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040" + "\064\160\170\051\073\040\175\012\012\056\143\157\156\164\145\156" + "\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\163\143\162\157\154\154\145\144\167\151\156" + "\144\157\167\056\165\156\144\145\162\163\150\157\157\164\055\164" + "\157\160\040\076\040\165\156\144\145\162\163\150\157\157\164\056" + "\164\157\160\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056" + "\165\156\144\145\162\163\150\157\157\164\055\164\157\160\040\076" + "\040\165\156\144\145\162\163\150\157\157\164\056\164\157\160\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\060\040\061\160\170\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065" + "\051\073\040\142\141\143\153\147\162\157\165\156\144\072\040\154" + "\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164" + "\157\040\142\157\164\164\157\155\054\040\141\154\160\150\141\050" + "\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145\156" + "\164\040\064\160\170\051\073\040\175\012\012\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\056\165\156\144\145\162\163\150\157\157\164" + "\055\142\157\164\164\157\155\040\076\040\165\156\144\145\162\163" + "\150\157\157\164\056\142\157\164\164\157\155\054\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\163\143\162\157\154\154\145" + "\144\167\151\156\144\157\167\056\165\156\144\145\162\163\150\157" + "\157\164\055\142\157\164\164\157\155\040\076\040\165\156\144\145" + "\162\163\150\157\157\164\056\142\157\164\164\157\155\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\060\040\055\061\160\170\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051" + "\073\040\142\141\143\153\147\162\157\165\156\144\072\040\154\151" + "\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157" + "\040\164\157\160\054\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\056\165\156\144\145\162\163\150\157\157\164\055\163\164\141" + "\162\164\072\144\151\162\050\154\164\162\051\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\154\145\146\164\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\163\143\162\157\154" + "\154\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163" + "\150\157\157\164\055\163\164\141\162\164\072\144\151\162\050\154" + "\164\162\051\040\076\040\165\156\144\145\162\163\150\157\157\164" + "\056\154\145\146\164\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\061\160\170\040\060\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\065\051\073\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\162\151\147\150\164\054\040\141" + "\154\160\150\141\050\100\163\145\143\157\156\144\141\162\171\137" + "\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\065\051\054\040\164\162\141\156\163" + "\160\141\162\145\156\164\040\064\160\170\051\073\040\175\012\012" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\163\143\162\157" + "\154\154\145\144\167\151\156\144\157\167\056\165\156\144\145\162" + "\163\150\157\157\164\055\163\164\141\162\164\072\144\151\162\050" + "\162\164\154\051\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\162\151\147\150\164\054\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\163\143\162\157\154\154\145\144\167\151\156" + "\144\157\167\056\165\156\144\145\162\163\150\157\157\164\055\163" + "\164\141\162\164\072\144\151\162\050\162\164\154\051\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\162\151\147\150\164" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\055\061\160\170\040\060\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\154\145\146\164\054\040\141\154\160\150\141\050" + "\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145\156" + "\164\040\064\160\170\051\073\040\175\012\012\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\056\165\156\144\145\162\163\150\157\157\164" + "\055\145\156\144\072\144\151\162\050\154\164\162\051\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\162\151\147\150\164" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\056\165\156\144" + "\145\162\163\150\157\157\164\055\145\156\144\072\144\151\162\050" + "\154\164\162\051\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\162\151\147\150\164\040\173\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\151\156\163\145\164\040\055\061\160\170" + "\040\060\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147" + "\162\141\144\151\145\156\164\050\164\157\040\154\145\146\164\054" + "\040\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162" + "\171\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162\141" + "\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040\175" + "\012\012\056\143\157\156\164\145\156\164\055\160\141\156\145\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\056\165\156\144" + "\145\162\163\150\157\157\164\055\145\156\144\072\144\151\162\050" + "\162\164\154\051\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\154\145\146\164\054\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\163\143\162\157\154\154\145\144\167\151\156\144" + "\157\167\056\165\156\144\145\162\163\150\157\157\164\055\145\156" + "\144\072\144\151\162\050\162\164\154\051\040\076\040\165\156\144" + "\145\162\163\150\157\157\164\056\154\145\146\164\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\061\160\170\040\060\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162" + "\151\147\150\164\054\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\146\154\141\160\040\076\040\144\151\155\155\151\156" + "\147\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\154" + "\145\141\146\154\145\164\040\076\040\144\151\155\155\151\156\147" + "\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\156\141" + "\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076\040" + "\144\151\155\155\151\156\147\054\040\056\143\157\156\164\145\156" + "\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\157\166\145\162\154\141\171\055\163\160\154" + "\151\164\055\166\151\145\167\040\076\040\144\151\155\155\151\156" + "\147\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040\146" + "\154\141\160\040\076\040\144\151\155\155\151\156\147\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\154\145\141\146\154" + "\145\164\040\076\040\144\151\155\155\151\156\147\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\156\141\166\151\147\141" + "\164\151\157\156\055\166\151\145\167\040\076\040\144\151\155\155" + "\151\156\147\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\157\166\145\162\154\141\171\055\163\160\154\151\164\055\166" + "\151\145\167\040\076\040\144\151\155\155\151\156\147\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\073\040\175\012\012\056" + "\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\146\154\141\160\040" + "\076\040\142\157\162\144\145\162\054\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\154\145\141\146\154\145\164\040\076\040" + "\142\157\162\144\145\162\054\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\156\141\166\151\147\141\164\151\157\156\055\166" + "\151\145\167\040\076\040\142\157\162\144\145\162\054\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\157\166\145\162\154\141" + "\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040\142" + "\157\162\144\145\162\054\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141" + "\156\145\040\146\154\141\160\040\076\040\142\157\162\144\145\162" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\154\145" + "\141\146\154\145\164\040\076\040\142\157\162\144\145\162\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\156\141\166\151" + "\147\141\164\151\157\156\055\166\151\145\167\040\076\040\142\157" + "\162\144\145\162\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156" + "\145\040\157\166\145\162\154\141\171\055\163\160\154\151\164\055" + "\166\151\145\167\040\076\040\142\157\162\144\145\162\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\061\160\170\073\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\061\160\170\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\175\012\012\056\143\157\156\164\145\156" + "\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\146\154\141\160\040\076\040\163\150\141\144" + "\157\167\054\040\056\143\157\156\164\145\156\164\055\160\141\156" + "\145\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\154\145\141\146\154\145\164\040\076\040\163\150\141\144\157\167" + "\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\156\141" + "\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076\040" + "\163\150\141\144\157\167\054\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\157\166\145\162\154\141\171\055\163\160\154\151" + "\164\055\166\151\145\167\040\076\040\163\150\141\144\157\167\054" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\056" + "\143\157\156\164\145\156\164\055\160\141\156\145\040\146\154\141" + "\160\040\076\040\163\150\141\144\157\167\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\154\145\141\146\154\145\164\040" + "\076\040\163\150\141\144\157\167\054\040\056\163\151\144\145\142" + "\141\162\055\160\141\156\145\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\156\141\166\151\147\141\164\151\157\156" + "\055\166\151\145\167\040\076\040\163\150\141\144\157\167\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\157\166\145\162" + "\154\141\171\055\163\160\154\151\164\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\040\173\040\155\151\156\055\167\151" + "\144\164\150\072\040\065\066\160\170\073\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\065\066\160\170\073\040\175\012\012" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\146\154\141\160" + "\040\076\040\163\150\141\144\157\167\056\154\145\146\164\054\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\154\145\141\146" + "\154\145\164\040\076\040\163\150\141\144\157\167\056\154\145\146" + "\164\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\156" + "\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\056\154\145\146\164\054\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\157\166\145\162\154\141" + "\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163" + "\150\141\144\157\167\056\154\145\146\164\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\146\154\141\160\040\076\040\163" + "\150\141\144\157\167\056\154\145\146\164\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\154\145\141\146\154\145\164\040" + "\076\040\163\150\141\144\157\167\056\154\145\146\164\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\156\141\166\151\147" + "\141\164\151\157\156\055\166\151\145\167\040\076\040\163\150\141" + "\144\157\167\056\154\145\146\164\054\040\056\163\151\144\145\142" + "\141\162\055\160\141\156\145\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\157\166\145\162\154\141\171\055\163\160" + "\154\151\164\055\166\151\145\167\040\076\040\163\150\141\144\157" + "\167\056\154\145\146\164\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162\151" + "\147\150\164\054\040\141\154\160\150\141\050\100\163\145\143\157" + "\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\067\051\054\040" + "\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162\171" + "\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\061\064\051\040\064\060\160\170\054" + "\040\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162" + "\171\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\051\040\065\066\160\170\051\054\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\162\151\147\150\164\054\040\141\154\160\150\141\050" + "\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\064\051\054\040\141\154\160\150\141\050\100\163\145\143\157" + "\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040" + "\067\160\170\054\040\141\154\160\150\141\050\100\163\145\143\157" + "\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\051\040\062\064\160" + "\170\051\073\040\175\012\012\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\146\154\141\160\040\076\040\163\150\141\144\157\167" + "\056\162\151\147\150\164\054\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\154\145\141\146\154\145\164\040\076\040\163\150" + "\141\144\157\167\056\162\151\147\150\164\054\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\056\163\151\144\145\142" + "\141\162\055\160\141\156\145\040\156\141\166\151\147\141\164\151" + "\157\156\055\166\151\145\167\040\076\040\163\150\141\144\157\167" + "\056\162\151\147\150\164\054\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\157\166\145\162\154\141\171\055\163\160\154\151" + "\164\055\166\151\145\167\040\076\040\163\150\141\144\157\167\056" + "\162\151\147\150\164\054\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141" + "\156\145\040\146\154\141\160\040\076\040\163\150\141\144\157\167" + "\056\162\151\147\150\164\054\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\154\145\141\146\154\145\164\040\076\040\163\150" + "\141\144\157\167\056\162\151\147\150\164\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\156\141\166\151\147\141\164\151" + "\157\156\055\166\151\145\167\040\076\040\163\150\141\144\157\167" + "\056\162\151\147\150\164\054\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\157\166\145\162\154\141\171\055\163\160\154\151" + "\164\055\166\151\145\167\040\076\040\163\150\141\144\157\167\056" + "\162\151\147\150\164\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\151\155\141\147\145\072\040\154\151\156\145\141\162" + "\055\147\162\141\144\151\145\156\164\050\164\157\040\154\145\146" + "\164\054\040\141\154\160\150\141\050\100\163\145\143\157\156\144" + "\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\067\051\054\040\141\154" + "\160\150\141\050\100\163\145\143\157\156\144\141\162\171\137\163" + "\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\061\064\051\040\064\060\160\170\054\040\141" + "\154\160\150\141\050\100\163\145\143\157\156\144\141\162\171\137" + "\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\051\040\065\066\160\170\051\054\040\154\151" + "\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157" + "\040\154\145\146\164\054\040\141\154\160\150\141\050\100\163\145" + "\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\064\051" + "\054\040\141\154\160\150\141\050\100\163\145\143\157\156\144\141" + "\162\171\137\163\151\144\145\142\141\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\061\064\051\040\067\160\170" + "\054\040\141\154\160\150\141\050\100\163\145\143\157\156\144\141" + "\162\171\137\163\151\144\145\142\141\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\051\040\062\064\160\170\051\073" + "\040\175\012\012\056\143\157\156\164\145\156\164\055\160\141\156" + "\145\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\146\154\141\160\040\076\040\163\150\141\144\157\167\056\165\160" + "\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\154\145" + "\141\146\154\145\164\040\076\040\163\150\141\144\157\167\056\165" + "\160\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\156" + "\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\056\165\160\054\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\056\163\151\144\145\142" + "\141\162\055\160\141\156\145\040\157\166\145\162\154\141\171\055" + "\163\160\154\151\164\055\166\151\145\167\040\076\040\163\150\141" + "\144\157\167\056\165\160\054\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\146\154\141\160\040\076\040\163\150\141\144\157" + "\167\056\165\160\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156" + "\145\040\154\145\141\146\154\145\164\040\076\040\163\150\141\144" + "\157\167\056\165\160\054\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141" + "\156\145\040\156\141\166\151\147\141\164\151\157\156\055\166\151" + "\145\167\040\076\040\163\150\141\144\157\167\056\165\160\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\157\166\145\162" + "\154\141\171\055\163\160\154\151\164\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\056\165\160\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040\154" + "\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164" + "\157\040\142\157\164\164\157\155\054\040\141\154\160\150\141\050" + "\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\051\054\040\141\154\160\150\141\050\100\163\145\143\157" + "\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040" + "\064\060\160\170\054\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\051\040\065\066" + "\160\170\051\054\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\142\157\164\164\157\155\054\040" + "\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162\171" + "\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\064\051\054\040\141\154\160\150\141" + "\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\061\064\051\040\067\160\170\054\040\141\154\160\150\141" + "\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\051\040\062\064\160\170\051\073\040\175\012\012\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\040\146\154\141\160\040\076\040" + "\163\150\141\144\157\167\056\144\157\167\156\054\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\040\154\145\141\146\154\145\164" + "\040\076\040\163\150\141\144\157\167\056\144\157\167\156\054\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\156\141\166\151" + "\147\141\164\151\157\156\055\166\151\145\167\040\076\040\163\150" + "\141\144\157\167\056\144\157\167\156\054\040\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\157\166\145\162\154\141\171\055\163" + "\160\154\151\164\055\166\151\145\167\040\076\040\163\150\141\144" + "\157\167\056\144\157\167\156\054\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\146\154\141\160\040\076\040\163\150\141\144" + "\157\167\056\144\157\167\156\054\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\154\145\141\146\154\145\164\040\076\040\163" + "\150\141\144\157\167\056\144\157\167\156\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\156\141\166\151\147\141\164\151" + "\157\156\055\166\151\145\167\040\076\040\163\150\141\144\157\167" + "\056\144\157\167\156\054\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141" + "\156\145\040\157\166\145\162\154\141\171\055\163\160\154\151\164" + "\055\166\151\145\167\040\076\040\163\150\141\144\157\167\056\144" + "\157\167\156\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\154\151\156\145\141\162\055\147" + "\162\141\144\151\145\156\164\050\164\157\040\164\157\160\054\040" + "\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162\171" + "\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\067\051\054\040\141\154\160\150\141" + "\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\061\064\051\040\064\060\160\170\054\040\141\154\160\150" + "\141\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144" + "\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\051\040\065\066\160\170\051\054\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\164\157" + "\160\054\040\141\154\160\150\141\050\100\163\145\143\157\156\144" + "\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\064\051\054\040\141\154" + "\160\150\141\050\100\163\145\143\157\156\144\141\162\171\137\163" + "\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\061\064\051\040\067\160\170\054\040\141\154" + "\160\150\141\050\100\163\145\143\157\156\144\141\162\171\137\163" + "\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\051\040\062\064\160\170\051\073\040\175\012\012" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\142\141\156\156" + "\145\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\167\151\144\147\145\164\054\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\142\141\156\156\145\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\167\151\144\147\145\164\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\155\151\170\050\100\141\143\143\145\156\164\137\142" + "\147\137\143\157\154\157\162\054\100\163\145\143\157\156\144\141" + "\162\171\137\163\151\144\145\142\141\162\137\142\147\137\143\157" + "\154\157\162\054\060\056\067\051\073\040\143\157\154\157\162\072" + "\040\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\146\147\137\143\157\154\157\162\073\040\175\012" + "\012\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\142\141\156" + "\156\145\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\167\151\144\147\145\164\072\142\141\143\153\144\162\157\160" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\142\141" + "\156\156\145\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\167\151\144\147\145\164\072\142\141\143\153\144\162\157" + "\160\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\155\151\170\050\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\054\100\163\145\143\157" + "\156\144\141\162\171\137\163\151\144\145\142\141\162\137\142\141" + "\143\153\144\162\157\160\137\143\157\154\157\162\054\060\056\070" + "\065\051\073\040\175\012\012\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\072\144\151\162\050\154\164\162\051\054\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\072\144\151\162\050\154\164\162" + "\051\040\142\141\156\156\145\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\167\151\144\147\145\164\054\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\056\145\156\144\072\144\151" + "\162\050\162\164\154\051\054\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\056\145\156\144\072\144\151\162\050\162\164\154\051" + "\040\142\141\156\156\145\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\167\151\144\147\145\164\054\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\072\144\151\162\050\154\164\162" + "\051\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\072\144" + "\151\162\050\154\164\162\051\040\142\141\156\156\145\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147" + "\145\164\054\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145\056" + "\145\156\144\072\144\151\162\050\162\164\154\051\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\056\145\156\144\072\144\151" + "\162\050\162\164\154\051\040\142\141\156\156\145\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147\145" + "\164\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\055\061\160\170\040\060\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\175\012\012\056\143\157\156\164\145\156" + "\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\072\144\151\162\050\162\164\154\051\054\040\056" + "\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\072\144\151\162\050\162" + "\164\154\051\040\142\141\156\156\145\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\167\151\144\147\145\164\054\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\056\145\156\144\072" + "\144\151\162\050\154\164\162\051\054\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\056\145\156\144\072\144\151\162\050\154\164" + "\162\051\040\142\141\156\156\145\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\167\151\144\147\145\164\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\072\144\151\162\050\162" + "\164\154\051\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\072\144\151\162\050\162\164\154\051\040\142\141\156\156\145\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\167\151" + "\144\147\145\164\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156" + "\145\056\145\156\144\072\144\151\162\050\154\164\162\051\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\056\145\156\144\072" + "\144\151\162\050\154\164\162\051\040\142\141\156\156\145\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\167\151\144" + "\147\145\164\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\151\156\163\145\164\040\061\160\170\040\060\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\065\051\073\040\175\012\012\056\163\151\144\145\142" + "\141\162\055\160\141\156\145\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\164\162\141\156\163\160" + "\141\162\145\156\164\073\040\143\157\154\157\162\072\040\151\156" + "\150\145\162\151\164\073\040\175\012\012\163\164\141\143\153\163" + "\151\144\145\142\141\162\040\162\157\167\040\173\040\160\141\144" + "\144\151\156\147\072\040\061\060\160\170\040\064\160\170\073\040" + "\175\012\012\163\164\141\143\153\163\151\144\145\142\141\162\040" + "\162\157\167\040\076\040\154\141\142\145\154\040\173\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\066\160\170\073" + "\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040" + "\066\160\170\073\040\175\012\012\163\164\141\143\153\163\151\144" + "\145\142\141\162\040\162\157\167\056\156\145\145\144\163\055\141" + "\164\164\145\156\164\151\157\156\040\076\040\154\141\142\145\154" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\163\151" + "\172\145\072\040\066\160\170\040\066\160\170\054\040\060\040\060" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\040\116\141\166" + "\151\147\141\164\151\157\156\040\123\151\144\145\142\141\162\040" + "\052\040\052\057\012\056\156\141\166\151\147\141\164\151\157\156" + "\055\163\151\144\145\142\141\162\040\173\040\160\141\144\144\151" + "\156\147\072\040\066\160\170\040\060\073\040\175\012\012\056\156" + "\141\166\151\147\141\164\151\157\156\055\163\151\144\145\142\141" + "\162\054\040\056\156\141\166\151\147\141\164\151\157\156\055\163" + "\151\144\145\142\141\162\056\166\151\145\167\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\056\156\141\166\151\147" + "\141\164\151\157\156\055\163\151\144\145\142\141\162\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170\054" + "\040\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144" + "\145\142\141\162\056\166\151\145\167\072\144\151\163\141\142\154" + "\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\143\157\154\157\162\072\040\151\156\150\145\162" + "\151\164\073\040\175\012\012\056\156\141\166\151\147\141\164\151" + "\157\156\055\163\151\144\145\142\141\162\056\142\141\143\153\147" + "\162\157\165\156\144\054\040\056\156\141\166\151\147\141\164\151" + "\157\156\055\163\151\144\145\142\141\162\056\142\141\143\153\147" + "\162\157\165\156\144\072\144\151\163\141\142\154\145\144\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\100\167\151\156\144\157\167\137\142\147\137\143\157" + "\154\157\162\073\040\143\157\154\157\162\072\040\100\167\151\156" + "\144\157\167\137\146\147\137\143\157\154\157\162\073\040\175\012" + "\012\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144" + "\145\142\141\162\040\162\157\167\056\141\143\164\151\166\141\164" + "\141\142\154\145\072\150\157\166\145\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\060\067\051\073\040\175\012\012\056\156\141\166" + "\151\147\141\164\151\157\156\055\163\151\144\145\142\141\162\040" + "\162\157\167\056\141\143\164\151\166\141\164\141\142\154\145\072" + "\141\143\164\151\166\145\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\061\066\051\073\040\175\012\012\056\156\141\166\151\147\141\164" + "\151\157\156\055\163\151\144\145\142\141\162\040\162\157\167\056" + "\141\143\164\151\166\141\164\141\142\154\145\056\150\141\163\055" + "\157\160\145\156\055\160\157\160\165\160\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\060\067\051\073\040\175\012\012\056\156\141\166" + "\151\147\141\164\151\157\156\055\163\151\144\145\142\141\162\040" + "\162\157\167\056\141\143\164\151\166\141\164\141\142\154\145\072" + "\163\145\154\145\143\164\145\144\072\150\157\166\145\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\061\063\051\073\040\175\012\012" + "\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145" + "\142\141\162\040\162\157\167\056\141\143\164\151\166\141\164\141" + "\142\154\145\072\163\145\154\145\143\164\145\144\072\141\143\164" + "\151\166\145\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\061\071\051" + "\073\040\175\012\012\056\156\141\166\151\147\141\164\151\157\156" + "\055\163\151\144\145\142\141\162\040\162\157\167\056\141\143\164" + "\151\166\141\164\141\142\154\145\056\150\141\163\055\157\160\145" + "\156\055\160\157\160\165\160\072\163\145\154\145\143\164\145\144" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\063\051\073\040\175" + "\012\012\056\156\141\166\151\147\141\164\151\157\156\055\163\151" + "\144\145\142\141\162\040\162\157\167\072\163\145\154\145\143\164" + "\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\061\051\073\040" + "\175\012\012\056\156\141\166\151\147\141\164\151\157\156\055\163" + "\151\144\145\142\141\162\040\076\040\163\145\160\141\162\141\164" + "\157\162\040\173\040\155\141\162\147\151\156\072\040\066\160\170" + "\073\040\175\012\012\056\156\141\166\151\147\141\164\151\157\156" + "\055\163\151\144\145\142\141\162\040\076\040\162\157\167\040\173" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\063\066\160" + "\170\073\040\160\141\144\144\151\156\147\072\040\060\040\070\160" + "\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\066\160\170\073\040\155\141\162\147\151\156\072\040\060" + "\040\066\160\170\040\062\160\170\073\040\175\012\012\056\156\141" + "\166\151\147\141\164\151\157\156\055\163\151\144\145\142\141\162" + "\040\076\040\162\157\167\056\141\143\164\151\166\141\164\141\142" + "\154\145\072\150\157\166\145\162\054\040\056\156\141\166\151\147" + "\141\164\151\157\156\055\163\151\144\145\142\141\162\040\076\040" + "\162\157\167\056\141\143\164\151\166\141\164\141\142\154\145\072" + "\141\143\164\151\166\145\054\040\056\156\141\166\151\147\141\164" + "\151\157\156\055\163\151\144\145\142\141\162\040\076\040\162\157" + "\167\056\141\143\164\151\166\141\164\141\142\154\145\056\150\141" + "\163\055\157\160\145\156\055\160\157\160\165\160\054\040\056\156" + "\141\166\151\147\141\164\151\157\156\055\163\151\144\145\142\141" + "\162\040\076\040\162\157\167\072\163\145\154\145\143\164\145\144" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\060\040\060\040\060\040\061\160\170\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\065\051\073\040\175\012\012\100\153\145\171\146" + "\162\141\155\145\163\040\163\160\151\156\040\173\040\164\157\040" + "\173\040\164\162\141\156\163\146\157\162\155\072\040\162\157\164" + "\141\164\145\050\061\164\165\162\156\051\073\040\175\040\175\012" + "\012\163\160\151\156\156\145\162\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\156\157\156\145\073\040\157\160\141" + "\143\151\164\171\072\040\060\073\040\055\147\164\153\055\151\143" + "\157\156\055\163\157\165\162\143\145\072\040\055\147\164\153\055" + "\151\143\157\156\164\150\145\155\145\050\042\160\162\157\143\145" + "\163\163\055\167\157\162\153\151\156\147\055\163\171\155\142\157" + "\154\151\143\042\051\073\040\175\012\012\163\160\151\156\156\145" + "\162\072\143\150\145\143\153\145\144\040\173\040\157\160\141\143" + "\151\164\171\072\040\061\073\040\141\156\151\155\141\164\151\157" + "\156\072\040\163\160\151\156\040\061\163\040\154\151\156\145\141" + "\162\040\151\156\146\151\156\151\164\145\073\040\175\012\012\163" + "\160\151\156\156\145\162\072\143\150\145\143\153\145\144\072\144" + "\151\163\141\142\154\145\144\040\173\040\157\160\141\143\151\164" + "\171\072\040\060\056\064\073\040\175\012\012\163\160\151\156\142" + "\165\164\164\157\156\040\173\040\160\141\144\144\151\156\147\072" + "\040\060\073\040\142\157\162\144\145\162\055\163\160\141\143\151" + "\156\147\072\040\060\073\040\057\052\040\072\156\157\164\040\150" + "\145\162\145\040\152\165\163\164\040\164\157\040\142\165\155\160" + "\040\163\160\145\143\151\146\151\143\151\164\171\040\141\142\157" + "\166\145\040\164\150\141\164\040\157\146\040\164\150\145\040\154" + "\151\163\164\040\142\165\164\164\157\156\040\163\164\171\154\151" + "\156\147\040\052\057\040\175\012\012\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\173\040" + "\155\141\162\147\151\156\072\040\060\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\060\073\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\156\157\156\145\073\040\142" + "\157\162\144\145\162\055\163\164\171\154\145\072\040\163\157\154" + "\151\144\073\040\142\157\162\144\145\162\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\065\051\073\040\175\012\012\163\160" + "\151\156\142\165\164\164\157\156\072\156\157\164\050\056\166\145" + "\162\164\151\143\141\154\051\040\173\040\057\052\040\072\156\157" + "\164\040\150\145\162\145\040\152\165\163\164\040\164\157\040\142" + "\165\155\160\040\163\160\145\143\151\146\151\143\151\164\171\040" + "\141\142\157\166\145\040\164\150\141\164\040\157\146\040\164\150" + "\145\040\154\151\163\164\040\142\165\164\164\157\156\040\163\164" + "\171\154\151\156\147\040\052\057\040\175\012\012\163\160\151\156" + "\142\165\164\164\157\156\072\156\157\164\050\056\166\145\162\164" + "\151\143\141\154\051\040\076\040\164\145\170\164\040\173\040\155" + "\151\156\055\167\151\144\164\150\072\040\062\070\160\170\073\040" + "\160\141\144\144\151\156\147\072\040\066\160\170\073\040\175\012" + "\012\163\160\151\156\142\165\164\164\157\156\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165" + "\164\164\157\156\072\156\157\164\050\056\166\145\162\164\151\143" + "\141\154\051\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\173\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\061\066\160\170\073\040\155\151\156\055\167\151\144\164" + "\150\072\040\062\062\160\170\073\040\160\141\144\144\151\156\147" + "\055\142\157\164\164\157\155\072\040\060\073\040\160\141\144\144" + "\151\156\147\055\164\157\160\072\040\060\073\040\142\157\162\144" + "\145\162\055\154\145\146\164\055\167\151\144\164\150\072\040\061" + "\160\170\073\040\175\012\012\163\160\151\156\142\165\164\164\157" + "\156\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144" + "\151\162\050\162\164\154\051\054\040\163\160\151\156\142\165\164" + "\164\157\156\072\156\157\164\050\056\166\145\162\164\151\143\141" + "\154\051\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\144\151\162\050\162\164\154\051\040\173\040\142\157" + "\162\144\145\162\055\154\145\146\164\055\167\151\144\164\150\072" + "\040\060\073\040\142\157\162\144\145\162\055\162\151\147\150\164" + "\055\167\151\144\164\150\072\040\061\160\170\073\040\175\012\012" + "\163\160\151\156\142\165\164\164\157\156\072\156\157\164\050\056" + "\166\145\162\164\151\143\141\154\051\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051" + "\072\154\141\163\164\055\143\150\151\154\144\054\040\163\160\151" + "\156\142\165\164\164\157\156\072\156\157\164\050\056\166\145\162" + "\164\151\143\141\154\051\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051\072" + "\154\141\163\164\055\143\150\151\154\144\040\173\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\060\040\066\160" + "\170\040\066\160\170\040\060\073\040\175\012\012\163\160\151\156" + "\142\165\164\164\157\156\072\156\157\164\050\056\166\145\162\164" + "\151\143\141\154\051\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\054\040\163\160\151\156\142\165" + "\164\164\157\156\072\156\157\164\050\056\166\145\162\164\151\143" + "\141\154\051\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\173\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\066\160\170\040\060\040" + "\060\040\066\160\170\073\040\175\012\012\163\160\151\156\142\165" + "\164\164\157\156\056\166\145\162\164\151\143\141\154\040\173\040" + "\057\052\040\072\156\157\164\040\150\145\162\145\040\152\165\163" + "\164\040\164\157\040\142\165\155\160\040\163\160\145\143\151\146" + "\151\143\151\164\171\040\141\142\157\166\145\040\164\150\141\164" + "\040\157\146\040\164\150\145\040\154\151\163\164\040\142\165\164" + "\164\157\156\040\163\164\171\154\151\156\147\040\052\057\040\175" + "\012\012\163\160\151\156\142\165\164\164\157\156\056\166\145\162" + "\164\151\143\141\154\040\076\040\164\145\170\164\040\173\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\063\060\160\170\073" + "\040\155\151\156\055\167\151\144\164\150\072\040\063\060\160\170" + "\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156\056" + "\166\145\162\164\151\143\141\154\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\054\040\163\160\151\156\142\165\164\164\157\156\056\166\145" + "\162\164\151\143\141\154\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\040\173\040\142\157\162\144\145\162\055\164\157\160\055\167" + "\151\144\164\150\072\040\061\160\170\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\060\040\060\040\066\160" + "\170\040\066\160\170\073\040\175\012\012\163\160\151\156\142\165" + "\164\164\157\156\056\166\145\162\164\151\143\141\154\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\146\151\162\163" + "\164\055\143\150\151\154\144\054\040\163\160\151\156\142\165\164" + "\164\157\156\056\166\145\162\164\151\143\141\154\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\173\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\167\151\144\164\150\072\040" + "\061\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\066\160\170\040\066\160\170\040\060\040\060\073" + "\040\175\012\012\163\167\151\164\143\150\040\173\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\061\064\160\170" + "\073\040\160\141\144\144\151\156\147\072\040\063\160\170\073\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\063\051\073\040\175\012\012\163\167" + "\151\164\143\150\072\150\157\166\145\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\064\051\073\040\175\012\012\163\167\151\164\143" + "\150\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\175\012\012\163\167\151\164\143\150\040" + "\173\040\157\165\164\154\151\156\145\072\040\060\040\163\157\154" + "\151\144\040\164\162\141\156\163\160\141\162\145\156\164\073\040" + "\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040" + "\065\160\170\073\040\164\162\141\156\163\151\164\151\157\156\072" + "\040\157\165\164\154\151\156\145\055\143\157\154\157\162\040\062" + "\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145" + "\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056" + "\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151" + "\156\145\055\167\151\144\164\150\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040" + "\175\012\012\163\167\151\164\143\150\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\054\060\056\070\051\073\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\061\160\170" + "\073\040\175\012\012\163\167\151\164\143\150\072\144\151\163\141" + "\142\154\145\144\040\173\040\146\151\154\164\145\162\072\040\157" + "\160\141\143\151\164\171\050\060\056\064\051\073\040\175\012\012" + "\163\167\151\164\143\150\040\076\040\163\154\151\144\145\162\040" + "\173\040\155\151\156\055\167\151\144\164\150\072\040\062\060\160" + "\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040\062" + "\060\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\065\060\045\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\155\151\170\050\167" + "\150\151\164\145\054\100\166\151\145\167\137\142\147\137\143\157" + "\154\157\162\054\060\056\062\051\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\060\040\062\160\170\040\064\160\170\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\062\051\073\040\175\012\012\163\167\151\164\143\150\040\076\040" + "\163\154\151\144\145\162\072\144\151\163\141\142\154\145\144\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\060\040" + "\062\160\170\040\064\160\170\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\175\012\012\163\167\151\164\143\150\072\150" + "\157\166\145\162\040\076\040\163\154\151\144\145\162\054\040\163" + "\167\151\164\143\150\072\141\143\164\151\166\145\040\076\040\163" + "\154\151\144\145\162\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\072\040\167\150\151\164\145\073\040\175\012\012\163\167" + "\151\164\143\150\072\143\150\145\143\153\145\144\040\173\040\143" + "\157\154\157\162\072\040\100\141\143\143\145\156\164\137\146\147" + "\137\143\157\154\157\162\073\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\073\040\175\012\012\163" + "\167\151\164\143\150\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\151\155\141\147\145\050\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\051\051\073\040\175\012\012\163\167\151\164\143" + "\150\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\151\155\141\147\145\050\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\062\051\051\073\040" + "\175\012\012\163\167\151\164\143\150\072\143\150\145\143\153\145" + "\144\040\076\040\163\154\151\144\145\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\167" + "\150\151\164\145\073\040\175\012\012\163\167\151\164\143\150\072" + "\143\150\145\143\153\145\144\040\076\040\151\155\141\147\145\040" + "\173\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164" + "\073\040\175\012\012\056\157\163\144\040\163\167\151\164\143\150" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\040\173\040\157\165\164\154\151\156\145\055\143" + "\157\154\157\162\072\040\162\147\142\141\050\062\065\065\054\040" + "\062\065\065\054\040\062\065\065\054\040\060\056\065\051\073\040" + "\175\012\012\056\157\163\144\040\163\167\151\164\143\150\072\143" + "\150\145\143\153\145\144\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\162\147\142\141\050" + "\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040\060" + "\056\066\051\073\040\143\157\154\157\162\072\040\162\147\142\141" + "\050\060\054\040\060\054\040\060\054\040\060\056\067\065\051\073" + "\040\175\012\012\164\141\142\142\141\162\040\056\142\157\170\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\100\150\145\141\144\145\162\142\141\162\137\142" + "\147\137\143\157\154\157\162\073\040\143\157\154\157\162\072\040" + "\100\150\145\141\144\145\162\142\141\162\137\146\147\137\143\157" + "\154\157\162\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\060\040\055\061\160\170\040\141\154" + "\160\150\141\050\100\150\145\141\144\145\162\142\141\162\137\142" + "\157\162\144\145\162\137\143\157\154\157\162\054\060\056\065\051" + "\073\040\160\141\144\144\151\156\147\072\040\061\160\170\073\040" + "\160\141\144\144\151\156\147\055\164\157\160\072\040\060\073\040" + "\175\012\012\164\141\142\142\141\162\040\056\142\157\170\072\142" + "\141\143\153\144\162\157\160\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\100\150\145\141" + "\144\145\162\142\141\162\137\142\141\143\153\144\162\157\160\137" + "\143\157\154\157\162\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\040\062\060\060\155\163\040\145\141\163\145\055\157" + "\165\164\073\040\175\012\012\164\141\142\142\141\162\040\056\142" + "\157\170\072\142\141\143\153\144\162\157\160\040\076\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\054\040\164\141" + "\142\142\141\162\040\056\142\157\170\072\142\141\143\153\144\162" + "\157\160\040\076\040\056\163\164\141\162\164\055\141\143\164\151" + "\157\156\054\040\164\141\142\142\141\162\040\056\142\157\170\072" + "\142\141\143\153\144\162\157\160\040\076\040\056\145\156\144\055" + "\141\143\164\151\157\156\040\173\040\146\151\154\164\145\162\072" + "\040\157\160\141\143\151\164\171\050\060\056\065\051\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\146\151\154\164\145" + "\162\040\062\060\060\155\163\040\145\141\163\145\055\157\165\164" + "\073\040\175\012\012\164\141\142\142\141\162\040\164\141\142\142" + "\157\170\040\173\040\160\141\144\144\151\156\147\055\142\157\164" + "\164\157\155\072\040\066\160\170\073\040\160\141\144\144\151\156" + "\147\055\164\157\160\072\040\066\160\170\073\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\063\064\160\170\073\040\175\012" + "\012\164\141\142\142\141\162\040\164\141\142\142\157\170\040\076" + "\040\164\141\142\142\157\170\143\150\151\154\144\040\173\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066\160" + "\170\073\040\175\012\012\164\141\142\142\141\162\040\164\141\142" + "\142\157\170\040\076\040\164\141\142\142\157\170\143\150\151\154" + "\144\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163" + "\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\064\160\170\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\073\040\175\012\012\164\141\142\142\141\162\040\164\141\142\142" + "\157\170\040\076\040\164\141\142\142\157\170\143\150\151\154\144" + "\072\146\157\143\165\163\055\167\151\164\150\151\156\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\040\173\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\100\141\143\143\145\156\164\137\143\157\154\157\162" + "\054\060\056\070\051\073\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\072\040\062\160\170\073\040\157\165\164\154\151" + "\156\145\055\157\146\146\163\145\164\072\040\055\062\160\170\073" + "\040\175\012\012\164\141\142\142\141\162\040\164\141\142\142\157" + "\170\040\076\040\163\145\160\141\162\141\164\157\162\040\173\040" + "\155\141\162\147\151\156\055\164\157\160\072\040\063\160\170\073" + "\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040" + "\063\160\170\073\040\164\162\141\156\163\151\164\151\157\156\072" + "\040\157\160\141\143\151\164\171\040\061\065\060\155\163\040\145" + "\141\163\145\055\151\156\055\157\165\164\073\040\175\012\012\164" + "\141\142\142\141\162\040\164\141\142\142\157\170\040\076\040\163" + "\145\160\141\162\141\164\157\162\056\150\151\144\144\145\156\040" + "\173\040\157\160\141\143\151\164\171\072\040\060\073\040\175\012" + "\012\164\141\142\142\141\162\040\164\141\142\142\157\170\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\151\156\144\151" + "\143\141\164\157\162\040\173\040\155\151\156\055\167\151\144\164" + "\150\072\040\062\160\170\073\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\062\160\170\073\040\155\141\162\147" + "\151\156\072\040\063\160\170\040\066\160\170\073\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\100\141\143\143\145\156\164" + "\137\143\157\154\157\162\073\040\175\012\012\164\141\142\142\141" + "\162\040\164\141\142\040\173\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\142\141\143\153\147\162\157\165\156\144\040\061" + "\065\060\155\163\040\145\141\163\145\055\151\156\055\157\165\164" + "\073\040\175\012\012\164\141\142\142\141\162\040\164\141\142\072" + "\150\157\166\145\162\054\040\164\141\142\142\141\162\040\164\141" + "\142\072\141\143\164\151\166\145\054\040\164\141\142\142\141\162" + "\040\164\141\142\072\163\145\154\145\143\164\145\144\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\060\040\060\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\175\012\012\164\141\142\142\141\162\040\164" + "\141\142\072\163\145\154\145\143\164\145\144\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\061\051\073\040\175\012\012\164\141\142\142" + "\141\162\040\164\141\142\072\163\145\154\145\143\164\145\144\072" + "\150\157\166\145\162\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061" + "\063\051\073\040\175\012\012\164\141\142\142\141\162\040\164\141" + "\142\072\163\145\154\145\143\164\145\144\072\141\143\164\151\166" + "\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\071\051\073\040" + "\175\012\012\164\141\142\142\141\162\040\164\141\142\072\150\157" + "\166\145\162\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\060\067\051" + "\073\040\175\012\012\164\141\142\142\141\162\040\164\141\142\072" + "\141\143\164\151\166\145\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\061\066\051\073\040\175\012\012\164\141\142\142\141\162\040\164" + "\141\142\142\157\170\056\163\151\156\147\154\145\055\164\141\142" + "\040\164\141\142\054\040\164\141\142\142\141\162\040\164\141\142" + "\142\157\170\056\163\151\156\147\154\145\055\164\141\142\040\164" + "\141\142\072\150\157\166\145\162\054\040\164\141\142\142\141\162" + "\040\164\141\142\142\157\170\056\163\151\156\147\154\145\055\164" + "\141\142\040\164\141\142\072\141\143\164\151\166\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145" + "\073\040\142\157\170\055\163\150\141\144\157\167\072\040\156\157" + "\156\145\073\040\175\012\012\164\141\142\142\141\162\040\056\163" + "\164\141\162\164\055\141\143\164\151\157\156\054\040\164\141\142" + "\142\141\162\040\056\145\156\144\055\141\143\164\151\157\156\040" + "\173\040\160\141\144\144\151\156\147\072\040\066\160\170\040\065" + "\160\170\073\040\175\012\012\164\141\142\142\141\162\040\056\163" + "\164\141\162\164\055\141\143\164\151\157\156\072\144\151\162\050" + "\154\164\162\051\054\040\164\141\142\142\141\162\040\056\145\156" + "\144\055\141\143\164\151\157\156\072\144\151\162\050\162\164\154" + "\051\040\173\040\160\141\144\144\151\156\147\055\162\151\147\150" + "\164\072\040\060\073\040\175\012\012\164\141\142\142\141\162\040" + "\056\163\164\141\162\164\055\141\143\164\151\157\156\072\144\151" + "\162\050\162\164\154\051\054\040\164\141\142\142\141\162\040\056" + "\145\156\144\055\141\143\164\151\157\156\072\144\151\162\050\154" + "\164\162\051\040\173\040\160\141\144\144\151\156\147\055\154\145" + "\146\164\072\040\060\073\040\175\012\012\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162" + "\040\164\141\142\142\141\162\040\056\142\157\170\054\040\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157\164" + "\164\157\155\055\142\141\162\040\164\141\142\142\141\162\040\056" + "\142\157\170\054\040\164\141\142\142\141\162\056\151\156\154\151" + "\156\145\040\056\142\157\170\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\164\162\141\156" + "\163\160\141\162\145\156\164\073\040\143\157\154\157\162\072\040" + "\151\156\150\145\162\151\164\073\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\156\157\156\145\073\040\160\141\144\144\151" + "\156\147\055\142\157\164\164\157\155\072\040\060\073\040\175\012" + "\012\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056" + "\164\157\160\055\142\141\162\040\164\141\142\142\141\162\040\056" + "\142\157\170\072\142\141\143\153\144\162\157\160\054\040\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157\164" + "\164\157\155\055\142\141\162\040\164\141\142\142\141\162\040\056" + "\142\157\170\072\142\141\143\153\144\162\157\160\054\040\164\141" + "\142\142\141\162\056\151\156\154\151\156\145\040\056\142\157\170" + "\072\142\141\143\153\144\162\157\160\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\164\162" + "\141\156\163\160\141\162\145\156\164\073\040\164\162\141\156\163" + "\151\164\151\157\156\072\040\156\157\156\145\073\040\175\012\012" + "\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164" + "\157\160\055\142\141\162\040\164\141\142\142\141\162\040\056\142" + "\157\170\072\142\141\143\153\144\162\157\160\040\076\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\054\040\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157\164" + "\164\157\155\055\142\141\162\040\164\141\142\142\141\162\040\056" + "\142\157\170\072\142\141\143\153\144\162\157\160\040\076\040\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\054\040\164" + "\141\142\142\141\162\056\151\156\154\151\156\145\040\056\142\157" + "\170\072\142\141\143\153\144\162\157\160\040\076\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\054\040\164\157\157" + "\154\142\141\162\166\151\145\167\040\076\040\056\164\157\160\055" + "\142\141\162\040\164\141\142\142\141\162\040\056\142\157\170\072" + "\142\141\143\153\144\162\157\160\040\076\040\056\163\164\141\162" + "\164\055\141\143\164\151\157\156\054\040\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055" + "\142\141\162\040\164\141\142\142\141\162\040\056\142\157\170\072" + "\142\141\143\153\144\162\157\160\040\076\040\056\163\164\141\162" + "\164\055\141\143\164\151\157\156\054\040\164\141\142\142\141\162" + "\056\151\156\154\151\156\145\040\056\142\157\170\072\142\141\143" + "\153\144\162\157\160\040\076\040\056\163\164\141\162\164\055\141" + "\143\164\151\157\156\054\040\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\164\141" + "\142\142\141\162\040\056\142\157\170\072\142\141\143\153\144\162" + "\157\160\040\076\040\056\145\156\144\055\141\143\164\151\157\156" + "\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\142\157\164\164\157\155\055\142\141\162\040\164\141\142\142" + "\141\162\040\056\142\157\170\072\142\141\143\153\144\162\157\160" + "\040\076\040\056\145\156\144\055\141\143\164\151\157\156\054\040" + "\164\141\142\142\141\162\056\151\156\154\151\156\145\040\056\142" + "\157\170\072\142\141\143\153\144\162\157\160\040\076\040\056\145" + "\156\144\055\141\143\164\151\157\156\040\173\040\146\151\154\164" + "\145\162\072\040\156\157\156\145\073\040\164\162\141\156\163\151" + "\164\151\157\156\072\040\156\157\156\145\073\040\175\012\012\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\040\056\143\157\154\154\141\160\163\145\055" + "\163\160\141\143\151\156\147\040\164\141\142\142\141\162\040\164" + "\141\142\142\157\170\054\040\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\142\157\164\164\157\155\055\142\141\162" + "\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143\151" + "\156\147\040\164\141\142\142\141\162\040\164\141\142\142\157\170" + "\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\164\157\160\055\142\141\162\040\056\143\157\154\154\141\160" + "\163\145\055\163\160\141\143\151\156\147\040\164\141\142\142\141" + "\162\040\056\163\164\141\162\164\055\141\143\164\151\157\156\054" + "\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056" + "\142\157\164\164\157\155\055\142\141\162\040\056\143\157\154\154" + "\141\160\163\145\055\163\160\141\143\151\156\147\040\164\141\142" + "\142\141\162\040\056\163\164\141\162\164\055\141\143\164\151\157" + "\156\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\164\157\160\055\142\141\162\040\056\143\157\154\154\141" + "\160\163\145\055\163\160\141\143\151\156\147\040\164\141\142\142" + "\141\162\040\056\145\156\144\055\141\143\164\151\157\156\054\040" + "\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142" + "\157\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141" + "\160\163\145\055\163\160\141\143\151\156\147\040\164\141\142\142" + "\141\162\040\056\145\156\144\055\141\143\164\151\157\156\040\173" + "\040\160\141\144\144\151\156\147\055\164\157\160\072\040\063\160" + "\170\073\040\160\141\144\144\151\156\147\055\142\157\164\164\157" + "\155\072\040\063\160\170\073\040\175\012\012\144\156\144\040\164" + "\141\142\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\100\150\145\141\144\145\162\142\141" + "\162\137\142\147\137\143\157\154\157\162\073\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155" + "\141\147\145\050\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\071\051\051\073\040\143" + "\157\154\157\162\072\040\100\150\145\141\144\145\162\142\141\162" + "\137\146\147\137\143\157\154\157\162\073\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\060\040\060\040\060\040\061\160\170" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\060\063\051\054\040\060\040\061\160\170\040\063\160\170\040" + "\061\160\170\040\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\060\067\051\054\040\060\040\062\160\170\040\066" + "\160\170\040\062\160\170\040\162\147\142\141\050\060\054\040\060" + "\054\040\060\054\040\060\056\060\063\051\073\040\157\165\164\154" + "\151\156\145\072\040\061\160\170\040\163\157\154\151\144\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\065\051\073\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\072\040\055\061\160\170\073\040\155\141" + "\162\147\151\156\072\040\062\065\160\170\073\040\175\012\012\164" + "\141\142\142\141\162\040\164\141\142\054\040\144\156\144\040\164" + "\141\142\040\173\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\062\066\160\170\073\040\160\141\144\144\151\156\147\072\040" + "\064\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\066\160\170\073\040\175\012\012\164\141\142\142" + "\141\162\040\164\141\142\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\054\040\144\156\144\040" + "\164\141\142\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\040\173\040\160\141\144\144\151\156" + "\147\072\040\060\073\040\155\141\162\147\151\156\072\040\060\073" + "\040\155\151\156\055\167\151\144\164\150\072\040\062\064\160\170" + "\073\040\155\151\156\055\150\145\151\147\150\164\072\040\062\064" + "\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\071\071\160\170\073\040\175\012\012\164\141\142\142" + "\141\162\040\164\141\142\040\151\156\144\151\143\141\164\157\162" + "\054\040\144\156\144\040\164\141\142\040\151\156\144\151\143\141" + "\164\157\162\040\173\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\062\160\170\073\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\062\160\170\073\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\100\141\143\143\145\156\164\137\143" + "\157\154\157\162\073\040\164\162\141\156\163\146\157\162\155\072" + "\040\164\162\141\156\163\154\141\164\145\131\050\064\160\170\051" + "\073\040\175\012\012\164\141\142\147\162\151\144\040\076\040\164" + "\141\142\147\162\151\144\143\150\151\154\144\040\056\143\141\162" + "\144\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163" + "\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\064\160\170\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\073\040\175\012\012\164\141\142\147\162\151\144\040\076\040\164" + "\141\142\147\162\151\144\143\150\151\154\144\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040" + "\056\143\141\162\144\040\173\040\157\165\164\154\151\156\145\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143" + "\143\145\156\164\137\143\157\154\157\162\054\060\056\070\051\073" + "\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072\040" + "\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\072\040\060\073\040\175\012\012\164\141\142\164\150" + "\165\155\142\156\141\151\154\040\173\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\061\066\160\170\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\142\157\170\055\163" + "\150\141\144\157\167\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\073\040\175\012\012\164\141\142\164" + "\150\165\155\142\156\141\151\154\040\076\040\142\157\170\040\173" + "\040\155\141\162\147\151\156\072\040\066\160\170\073\040\175\012" + "\012\164\141\142\164\150\165\155\142\156\141\151\154\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\060\040\060\040\062\160\170\040\141\154\160\150\141\050\100" + "\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162\054" + "\060\056\064\051\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\054\060" + "\056\061\051\073\040\175\012\012\164\141\142\164\150\165\155\142" + "\156\141\151\154\040\056\156\145\145\144\163\055\141\164\164\145" + "\156\164\151\157\156\072\144\151\162\050\154\164\162\051\040\173" + "\040\164\162\141\156\163\146\157\162\155\072\040\164\162\141\156" + "\163\154\141\164\145\050\070\160\170\054\040\055\070\160\170\051" + "\073\040\175\012\012\164\141\142\164\150\165\155\142\156\141\151" + "\154\040\056\156\145\145\144\163\055\141\164\164\145\156\164\151" + "\157\156\072\144\151\162\050\162\164\154\051\040\173\040\164\162" + "\141\156\163\146\157\162\155\072\040\164\162\141\156\163\154\141" + "\164\145\050\055\070\160\170\054\040\055\070\160\170\051\073\040" + "\175\012\012\164\141\142\164\150\165\155\142\156\141\151\154\040" + "\056\156\145\145\144\163\055\141\164\164\145\156\164\151\157\156" + "\040\076\040\167\151\144\147\145\164\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\100\141\143\143\145\156\164\137" + "\143\157\154\157\162\073\040\155\151\156\055\167\151\144\164\150" + "\072\040\061\062\160\170\073\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\061\062\160\170\073\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\070\160\170\073\040\155\141" + "\162\147\151\156\072\040\063\160\170\073\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\060\040\061\160\170\040\062\160\170" + "\040\141\154\160\150\141\050\100\141\143\143\145\156\164\137\143" + "\157\154\157\162\054\060\056\064\051\073\040\175\012\012\164\141" + "\142\164\150\165\155\142\156\141\151\154\040\056\143\141\162\144" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\143\157\154\157\162\072\040\151\156\150\145" + "\162\151\164\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\060\040\060\040\060\040\061\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\065\051\054\040\060" + "\040\061\160\170\040\063\160\170\040\061\160\170\040\162\147\142" + "\141\050\060\054\040\060\054\040\060\054\040\060\056\060\067\051" + "\054\040\060\040\062\160\170\040\066\160\170\040\062\160\170\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\060\063\051\073\040\175\012\012\164\141\142\164\150\165\155\142" + "\156\141\151\154\040\056\143\141\162\144\040\160\151\143\164\165" + "\162\145\040\173\040\157\165\164\154\151\156\145\072\040\061\160" + "\170\040\163\157\154\151\144\040\162\147\142\141\050\062\065\065" + "\054\040\062\065\065\054\040\062\065\065\054\040\060\056\063\051" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\055\061\160\170\073\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\061\062\160\170\073\040\175\012\012" + "\164\141\142\164\150\165\155\142\156\141\151\154\056\160\151\156" + "\156\145\144\040\056\143\141\162\144\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100\164" + "\150\165\155\142\156\141\151\154\137\142\147\137\143\157\154\157" + "\162\073\040\143\157\154\157\162\072\040\100\164\150\165\155\142" + "\156\141\151\154\137\146\147\137\143\157\154\157\162\073\040\157" + "\165\164\154\151\156\145\072\040\061\160\170\040\163\157\154\151" + "\144\040\162\147\142\141\050\062\065\065\054\040\062\065\065\054" + "\040\062\065\065\054\040\060\056\063\051\073\040\157\165\164\154" + "\151\156\145\055\157\146\146\163\145\164\072\040\055\061\160\170" + "\073\040\175\012\012\164\141\142\164\150\165\155\142\156\141\151" + "\154\040\056\151\143\157\156\055\164\151\164\154\145\055\142\157" + "\170\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151" + "\156\147\072\040\066\160\170\073\040\175\012\012\164\141\142\164" + "\150\165\155\142\156\141\151\154\040\056\164\141\142\055\165\156" + "\160\151\156\055\151\143\157\156\040\173\040\155\141\162\147\151" + "\156\072\040\066\160\170\073\040\155\151\156\055\167\151\144\164" + "\150\072\040\062\064\160\170\073\040\155\151\156\055\150\145\151" + "\147\150\164\072\040\062\064\160\170\073\040\175\012\012\164\141" + "\142\164\150\165\155\142\156\141\151\154\040\142\165\164\164\157" + "\156\056\143\151\162\143\165\154\141\162\040\173\040\155\141\162" + "\147\151\156\072\040\066\160\170\073\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\100\164\150\165\155\142\156\141\151\154\137\142\147\137" + "\143\157\154\157\162\054\060\056\067\065\051\073\040\155\151\156" + "\055\167\151\144\164\150\072\040\062\064\160\170\073\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\062\064\160\170\073\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\060\040\060\040" + "\060\040\061\160\170\040\143\165\162\162\145\156\164\103\157\154" + "\157\162\073\040\175\012\012\164\141\142\164\150\165\155\142\156" + "\141\151\154\040\142\165\164\164\157\156\056\143\151\162\143\165" + "\154\141\162\072\150\157\166\145\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\155\151\170\050\100\164\150\165\155\142\156\141" + "\151\154\137\142\147\137\143\157\154\157\162\054\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\051\054\060\056" + "\067\065\051\073\040\175\012\012\164\141\142\164\150\165\155\142" + "\156\141\151\154\040\142\165\164\164\157\156\056\143\151\162\143" + "\165\154\141\162\072\141\143\164\151\166\145\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\155\151\170\050\100\164\150\165\155\142" + "\156\141\151\154\137\142\147\137\143\157\154\157\162\054\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\062\051\054" + "\060\056\067\065\051\073\040\175\012\012\164\141\142\157\166\145" + "\162\166\151\145\167\040\076\040\056\157\166\145\162\166\151\145" + "\167\040\056\156\145\167\055\164\141\142\055\142\165\164\164\157" + "\156\040\173\040\155\141\162\147\151\156\072\040\061\070\160\170" + "\073\040\175\012\012\164\141\142\166\151\145\167\072\144\162\157" + "\160\050\141\143\164\151\166\145\051\054\040\164\141\142\142\157" + "\170\072\144\162\157\160\050\141\143\164\151\166\145\051\054\040" + "\164\141\142\147\162\151\144\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\040\173\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\156\157\156\145\073\040\175\012\012\143\165\162\163" + "\157\162\055\150\141\156\144\154\145\040\173\040\141\154\154\072" + "\040\165\156\163\145\164\073\040\160\141\144\144\151\156\147\072" + "\040\062\064\160\170\040\062\060\160\170\073\040\175\012\012\143" + "\165\162\163\157\162\055\150\141\156\144\154\145\040\076\040\143" + "\157\156\164\145\156\164\163\040\173\040\155\151\156\055\167\151" + "\144\164\150\072\040\062\060\160\170\073\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\062\060\160\170\073\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\065\060\045\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\143\165\162\163\157\162\055\150" + "\141\156\144\154\145\056\164\157\160\040\076\040\143\157\156\164" + "\145\156\164\163\040\173\040\142\157\162\144\145\162\055\164\157" + "\160\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\175\012\012\143\165\162\163\157\162\055\150\141\156" + "\144\154\145\056\142\157\164\164\157\155\040\076\040\143\157\156" + "\164\145\156\164\163\040\173\040\142\157\162\144\145\162\055\164" + "\157\160\055\154\145\146\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\164\162\141\156\163\146\157\162\155\072\040\164\162" + "\141\156\163\154\141\164\145\130\050\061\160\170\051\073\040\175" + "\012\012\143\165\162\163\157\162\055\150\141\156\144\154\145\056" + "\151\156\163\145\162\164\151\157\156\055\143\165\162\163\157\162" + "\040\076\040\143\157\156\164\145\156\164\163\040\173\040\142\157" + "\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\164\162\141\156\163\146\157" + "\162\155\072\040\164\162\141\156\163\154\141\164\145\130\050\061" + "\160\170\051\040\164\162\141\156\163\154\141\164\145\131\050\064" + "\160\170\051\040\162\157\164\141\164\145\050\064\065\144\145\147" + "\051\073\040\175\012\012\155\141\147\156\151\146\151\145\162\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\100\166\151\145\167\137\142\147\137\143\157\154" + "\157\162\073\040\175\012\012\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\056\157\163\144\040\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\056\157\163\144\040\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\056\157\163\144\056\164\157\157\154\142\141\162\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\150\145\141\144\145\162\142\141\162\056\157\163" + "\144\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\162\147\142\141\050\062\065\065" + "\054\040\062\065\065\054\040\062\065\065\054\040\060\056\065\051" + "\073\040\175\012\012\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\173" + "\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040" + "\175\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\167" + "\151\164\143\150\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\167\151\164\143\150\054\040\056\164\157\157\154\142\141" + "\162\040\163\167\151\164\143\150\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\167\151\164\143\150\040\173\040\155\141\162" + "\147\151\156\055\164\157\160\072\040\064\160\170\073\040\155\141" + "\162\147\151\156\055\142\157\164\164\157\155\072\040\064\160\170" + "\073\040\175\012\012\056\164\157\157\154\142\141\162\040\173\040" + "\160\141\144\144\151\156\147\072\040\066\160\170\073\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160" + "\170\073\040\175\012\012\056\164\157\157\154\142\141\162\056\157" + "\163\144\040\173\040\160\141\144\144\151\156\147\072\040\061\062" + "\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\061\062\160\170\073\040\175\012\012\164\157\157\154" + "\142\141\162\166\151\145\167\040\076\040\056\164\157\160\055\142" + "\141\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141" + "\143\151\156\147\040\056\164\157\157\154\142\141\162\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157" + "\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141\160" + "\163\145\055\163\160\141\143\151\156\147\040\056\164\157\157\154" + "\142\141\162\040\173\040\160\141\144\144\151\156\147\055\164\157" + "\160\072\040\063\160\170\073\040\160\141\144\144\151\156\147\055" + "\142\157\164\164\157\155\072\040\063\160\170\073\040\175\012\012" + "\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\040\107\164\153\123\145\141\162\143\150\102\141\162\040\052" + "\040\052\057\012\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\173" + "\040\160\141\144\144\151\156\147\072\040\066\160\170\040\066\160" + "\170\040\067\160\170\040\066\160\170\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\100\150\145" + "\141\144\145\162\142\141\162\137\142\147\137\143\157\154\157\162" + "\073\040\143\157\154\157\162\072\040\100\150\145\141\144\145\162" + "\142\141\162\137\146\147\137\143\157\154\157\162\073\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\060\040\055\061\160\170\040\141\154\160\150\141\050\100\150\145" + "\141\144\145\162\142\141\162\137\142\157\162\144\145\162\137\143" + "\157\154\157\162\054\060\056\065\051\073\040\175\012\012\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\072\142\141\143\153\144\162\157" + "\160\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\100\150\145\141\144\145\162\142\141\162" + "\137\142\141\143\153\144\162\157\160\137\143\157\154\157\162\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\040\062\060" + "\060\155\163\040\145\141\163\145\055\157\165\164\073\040\175\012" + "\012\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\072\142\141\143\153" + "\144\162\157\160\040\076\040\052\040\173\040\146\151\154\164\145" + "\162\072\040\157\160\141\143\151\164\171\050\060\056\065\051\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\146\151\154" + "\164\145\162\040\062\060\060\155\163\040\145\141\163\145\055\157" + "\165\164\073\040\175\012\012\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\143\154\157\163\145\040\173\040\155\151\156\055\167" + "\151\144\164\150\072\040\061\070\160\170\073\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\061\070\160\170\073\040\160\141" + "\144\144\151\156\147\072\040\064\160\170\073\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\065\060\045\073\040" + "\175\012\012\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056\143" + "\154\157\163\145\072\144\151\162\050\154\164\162\051\040\173\040" + "\155\141\162\147\151\156\055\154\145\146\164\072\040\061\060\160" + "\170\073\040\155\141\162\147\151\156\055\162\151\147\150\164\072" + "\040\064\160\170\073\040\175\012\012\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\056\143\154\157\163\145\072\144\151\162\050\162" + "\164\154\051\040\173\040\155\141\162\147\151\156\055\154\145\146" + "\164\072\040\064\160\170\073\040\155\141\162\147\151\156\055\162" + "\151\147\150\164\072\040\061\060\160\170\073\040\175\012\012\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\142\157\164\164\157\155\055\142\141\162\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\054\040\163\145\141\162\143\150\142\141" + "\162\056\151\156\154\151\156\145\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\054\040\167\151\156\144\157" + "\167\056\141\160\160\143\150\157\157\163\145\162\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\054\040\167\151\156\144\157\167\056" + "\163\150\157\162\164\143\165\164\163\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141" + "\162\145\156\164\073\040\143\157\154\157\162\072\040\151\156\150" + "\145\162\151\164\073\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\156\157\156\145\073\040\160\141\144\144\151\156\147\055" + "\142\157\164\164\157\155\072\040\066\160\170\073\040\175\012\012" + "\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164" + "\157\160\055\142\141\162\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\072\142\141\143\153\144\162\157\160\054\040\164\157\157\154" + "\142\141\162\166\151\145\167\040\076\040\056\142\157\164\164\157" + "\155\055\142\141\162\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\072\142\141\143\153\144\162\157\160\054\040\163\145\141\162\143" + "\150\142\141\162\056\151\156\154\151\156\145\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\072\142\141\143" + "\153\144\162\157\160\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\164\162\141\156\163\160" + "\141\162\145\156\164\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\156\157\156\145\073\040\175\012\012\164\157\157\154" + "\142\141\162\166\151\145\167\040\076\040\056\164\157\160\055\142" + "\141\162\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\072\142\141" + "\143\153\144\162\157\160\040\076\040\052\054\040\164\157\157\154" + "\142\141\162\166\151\145\167\040\076\040\056\142\157\164\164\157" + "\155\055\142\141\162\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\072\142\141\143\153\144\162\157\160\040\076\040\052\054\040\163" + "\145\141\162\143\150\142\141\162\056\151\156\154\151\156\145\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\072\142\141\143\153\144\162\157\160\040\076\040\052\040\173\040" + "\146\151\154\164\145\162\072\040\156\157\156\145\073\040\164\162" + "\141\156\163\151\164\151\157\156\072\040\156\157\156\145\073\040" + "\175\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\164\157\160\055\142\141\162\040\056\143\157\154\154\141" + "\160\163\145\055\163\160\141\143\151\156\147\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\054\040\164\157\157\154\142\141\162\166" + "\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142\141" + "\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143" + "\151\156\147\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\054\040" + "\167\151\156\144\157\167\056\141\160\160\143\150\157\157\163\145" + "\162\056\143\163\144\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\054\040\167\151\156\144\157\167\056\163\150\157\162\164\143\165" + "\164\163\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\173\040" + "\160\141\144\144\151\156\147\055\164\157\160\072\040\063\160\170" + "\073\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155" + "\072\040\063\160\170\073\040\175\012\012\057\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\040\107\164\153\101" + "\143\164\151\157\156\102\141\162\040\052\040\052\057\012\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\100\150\145" + "\141\144\145\162\142\141\162\137\142\147\137\143\157\154\157\162" + "\073\040\143\157\154\157\162\072\040\100\150\145\141\144\145\162" + "\142\141\162\137\146\147\137\143\157\154\157\162\073\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\060\040\061\160\170\040\141\154\160\150\141\050\100\150\145\141" + "\144\145\162\142\141\162\137\142\157\162\144\145\162\137\143\157" + "\154\157\162\054\060\056\065\051\073\040\160\141\144\144\151\156" + "\147\072\040\067\160\170\040\066\160\170\040\066\160\170\040\066" + "\160\170\073\040\175\012\012\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\076\040" + "\142\157\170\056\163\164\141\162\164\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\076\040\142\157\170\056\145\156\144\040" + "\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\066\160\170\073\040\175\012\012\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\072\142\141\143\153\144\162\157\160\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\100\150\145\141\144\145\162\142\141\162\137\142\141\143" + "\153\144\162\157\160\137\143\157\154\157\162\073\040\164\162\141" + "\156\163\151\164\151\157\156\072\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\040\062\060\060\155\163\040" + "\145\141\163\145\055\157\165\164\073\040\175\012\012\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\072\142\141\143\153\144\162\157\160" + "\040\076\040\052\040\173\040\146\151\154\164\145\162\072\040\157" + "\160\141\143\151\164\171\050\060\056\065\051\073\040\164\162\141" + "\156\163\151\164\151\157\156\072\040\146\151\154\164\145\162\040" + "\062\060\060\155\163\040\145\141\163\145\055\157\165\164\073\040" + "\175\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\164\157\160\055\142\141\162\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\054\040\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\142\157\164\164\157\155\055\142\141\162\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\164" + "\162\141\156\163\160\141\162\145\156\164\073\040\143\157\154\157" + "\162\072\040\151\156\150\145\162\151\164\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\156\157\156\145\073\040\160\141" + "\144\144\151\156\147\055\164\157\160\072\040\066\160\170\073\040" + "\175\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\164\157\160\055\142\141\162\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\072\142\141\143\153\144\162\157\160\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157" + "\164\164\157\155\055\142\141\162\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\072\142\141\143\153\144\162\157\160\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\164\162\141\156\163\160\141\162\145\156\164\073\040\164\162" + "\141\156\163\151\164\151\157\156\072\040\156\157\156\145\073\040" + "\175\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\164\157\160\055\142\141\162\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\072\142\141\143\153\144\162\157\160\040\076\040" + "\052\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\142\157\164\164\157\155\055\142\141\162\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\072\142\141\143\153\144\162\157\160" + "\040\076\040\052\040\173\040\146\151\154\164\145\162\072\040\156" + "\157\156\145\073\040\164\162\141\156\163\151\164\151\157\156\072" + "\040\156\157\156\145\073\040\175\012\012\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162" + "\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143\151" + "\156\147\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157" + "\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141\160" + "\163\145\055\163\160\141\143\151\156\147\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\173\040\160\141\144\144\151\156\147\055" + "\164\157\160\072\040\063\160\170\073\040\160\141\144\144\151\156" + "\147\055\142\157\164\164\157\155\072\040\063\160\170\073\040\175" + "\012\012\057\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\040\101\144\167\102\141\156\156\145\162\040\052\040\052\057\012" + "\142\141\156\156\145\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\167\151\144\147\145\164\040\173\040\057\052\040" + "\124\150\145\162\145\040\141\162\145\040\062\040\155\157\162\145" + "\040\151\156\163\164\141\156\143\145\163\040\151\156\040\137\163" + "\151\144\145\142\141\162\163\056\143\163\163\054\040\153\145\145" + "\160\040\151\156\040\163\171\156\143\040\167\151\164\150\040\164" + "\150\141\164\040\052\057\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\155\151\170\050\100\141\143" + "\143\145\156\164\137\142\147\137\143\157\154\157\162\054\100\167" + "\151\156\144\157\167\137\142\147\137\143\157\154\157\162\054\060" + "\056\067\051\073\040\143\157\154\157\162\072\040\100\167\151\156" + "\144\157\167\137\146\147\137\143\157\154\157\162\073\040\160\141" + "\144\144\151\156\147\072\040\066\160\170\073\040\175\012\012\142" + "\141\156\156\145\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\167\151\144\147\145\164\072\142\141\143\153\144\162" + "\157\160\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\155\151\170\050\100\141\143\143\145" + "\156\164\137\142\147\137\143\157\154\157\162\054\100\167\151\156" + "\144\157\167\137\142\147\137\143\157\154\157\162\054\060\056\070" + "\065\051\073\040\164\162\141\156\163\151\164\151\157\156\072\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\040\062\060\060\155\163\040\145\141\163\145\055\157\165\164\073" + "\040\175\012\012\142\141\156\156\145\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\167\151\144\147\145\164\072\142" + "\141\143\153\144\162\157\160\040\076\040\154\141\142\145\154\054" + "\040\142\141\156\156\145\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\167\151\144\147\145\164\072\142\141\143\153" + "\144\162\157\160\040\076\040\142\165\164\164\157\156\040\173\040" + "\146\151\154\164\145\162\072\040\157\160\141\143\151\164\171\050" + "\060\056\065\051\073\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\146\151\154\164\145\162\040\062\060\060\155\163\040\145" + "\141\163\145\055\157\165\164\073\040\175\012\012\057\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040" + "\101\144\167\124\157\157\154\142\141\162\126\151\145\167\040\052" + "\040\052\057\012\164\157\157\154\142\141\162\166\151\145\167\040" + "\076\040\056\164\157\160\055\142\141\162\040\056\143\157\154\154" + "\141\160\163\145\055\163\160\141\143\151\156\147\054\040\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157\164" + "\164\157\155\055\142\141\162\040\056\143\157\154\154\141\160\163" + "\145\055\163\160\141\143\151\156\147\040\173\040\160\141\144\144" + "\151\156\147\055\164\157\160\072\040\063\160\170\073\040\160\141" + "\144\144\151\156\147\055\142\157\164\164\157\155\072\040\063\160" + "\170\073\040\175\012\012\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\164\157\160\055\142\141\162\056\162\141\151" + "\163\145\144\054\040\164\157\157\154\142\141\162\166\151\145\167" + "\040\076\040\056\142\157\164\164\157\155\055\142\141\162\056\162" + "\141\151\163\145\144\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\100\150\145\141\144\145" + "\162\142\141\162\137\142\147\137\143\157\154\157\162\073\040\143" + "\157\154\157\162\072\040\100\150\145\141\144\145\162\142\141\162" + "\137\146\147\137\143\157\154\157\162\073\040\175\012\012\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157\160" + "\055\142\141\162\056\162\141\151\163\145\144\072\142\141\143\153" + "\144\162\157\160\054\040\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\142\157\164\164\157\155\055\142\141\162\056" + "\162\141\151\163\145\144\072\142\141\143\153\144\162\157\160\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\100\150\145\141\144\145\162\142\141\162\137\142" + "\141\143\153\144\162\157\160\137\143\157\154\157\162\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\040\062\060\060\155" + "\163\040\145\141\163\145\055\157\165\164\073\040\175\012\012\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\072\142\141\143\153\144\162\157\160\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157" + "\164\164\157\155\055\142\141\162\072\142\141\143\153\144\162\157" + "\160\040\076\040\167\151\156\144\157\167\150\141\156\144\154\145" + "\040\173\040\146\151\154\164\145\162\072\040\157\160\141\143\151" + "\164\171\050\060\056\065\051\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\146\151\154\164\145\162\040\062\060\060\155" + "\163\040\145\141\163\145\055\157\165\164\073\040\175\012\012\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\056\162\141\151\163\145\144\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\060\040\061\160\170" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\065\051\054\040\060\040\062\160\170\040" + "\064\160\170\040\141\154\160\150\141\050\100\150\145\141\144\145" + "\162\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\065\051\073\040\175\012\012\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162" + "\056\162\141\151\163\145\144\056\142\157\162\144\145\162\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\060\040\061" + "\160\170\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\175\012\012\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157" + "\164\164\157\155\055\142\141\162\056\162\141\151\163\145\144\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\060\040" + "\055\061\160\170\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\065\051\054\040\060\040" + "\055\062\160\170\040\064\160\170\040\141\154\160\150\141\050\100" + "\150\145\141\144\145\162\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\065\051\073\040\175\012\012\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157" + "\164\164\157\155\055\142\141\162\056\162\141\151\163\145\144\056" + "\142\157\162\144\145\162\040\173\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\060\040\055\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\175\012\012\164\157\157\154\142\141\162\166" + "\151\145\167\056\165\156\144\145\162\163\150\157\157\164\055\164" + "\157\160\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\040\076\040\165\156\144\145\162\163\150\157\157\164\056\164" + "\157\160\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\060\040\061\160\170\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\142\157\164\164\157\155\054\040\141\154\160" + "\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\040\064\160\170\051\073\040\175\012\012\164\157\157\154" + "\142\141\162\166\151\145\167\056\165\156\144\145\162\163\150\157" + "\157\164\055\142\157\164\164\157\155\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\142\157\164\164\157\155\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\055\061\160\170\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156" + "\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040" + "\164\157\160\054\040\141\154\160\150\141\050\100\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040\164" + "\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051\073" + "\040\175\012\012\167\151\156\144\157\167\056\144\145\166\145\154" + "\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056" + "\164\157\160\055\142\141\162\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\143\162\157\163" + "\163\055\146\141\144\145\050\065\045\040\055\147\164\153\055\162" + "\145\143\157\154\157\162\050\165\162\154\050\042\141\163\163\145" + "\164\163\057\144\145\166\145\154\055\163\171\155\142\157\154\151" + "\143\056\163\166\147\042\051\051\054\040\151\155\141\147\145\050" + "\164\162\141\156\163\160\141\162\145\156\164\051\051\073\040\142" + "\141\143\153\147\162\157\165\156\144\055\162\145\160\145\141\164" + "\072\040\162\145\160\145\141\164\055\170\073\040\175\012\012\167" + "\151\156\144\157\167\056\144\145\166\145\154\040\144\151\141\154" + "\157\147\040\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\164\157\160\055\142\141\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\165\156" + "\163\145\164\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\162\145\160\145\141\164\072\040\165\156\163\145\164\073\040\175" + "\012\012\164\157\157\154\164\151\160\040\173\040\160\141\144\144" + "\151\156\147\072\040\066\160\170\040\061\060\160\170\073\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\071\160" + "\170\073\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\175\012\012\164\157\157\154\164\151\160\056" + "\142\141\143\153\147\162\157\165\156\144\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\162" + "\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056\070" + "\051\073\040\142\141\143\153\147\162\157\165\156\144\055\143\154" + "\151\160\072\040\160\141\144\144\151\156\147\055\142\157\170\073" + "\040\142\157\162\144\145\162\072\040\061\160\170\040\163\157\154" + "\151\144\040\162\147\142\141\050\062\065\065\054\040\062\065\065" + "\054\040\062\065\065\054\040\060\056\061\051\073\040\143\157\154" + "\157\162\072\040\167\150\151\164\145\073\040\175\012\012\164\157" + "\157\154\164\151\160\040\076\040\142\157\170\040\173\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160" + "\170\073\040\175\012\012\056\166\151\145\167\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\054\040\164\145" + "\170\164\166\151\145\167\040\076\040\164\145\170\164\054\040\144" + "\151\141\154\157\147\055\150\157\163\164\040\076\040\144\151\141" + "\154\157\147\056\166\151\145\167\040\163\150\145\145\164\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\144\151\141" + "\154\157\147\055\150\157\163\164\040\076\040\144\151\141\154\157" + "\147\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\040\163\150\145\145\164\054\040\151\143\157\156\166" + "\151\145\167\040\173\040\143\157\154\157\162\072\040\100\166\151" + "\145\167\137\146\147\137\143\157\154\157\162\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\166\151\145\167\137\142\147\137\143\157\154\157\162\073\040\175" + "\012\012\056\166\151\145\167\072\144\151\163\141\142\154\145\144" + "\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\072\144\151\163\141\142\154\145\144\054\040\164\145\170\164" + "\166\151\145\167\040\076\040\164\145\170\164\072\144\151\163\141" + "\142\154\145\144\054\040\144\151\141\154\157\147\055\150\157\163" + "\164\040\076\040\144\151\141\154\157\147\056\166\151\145\167\040" + "\163\150\145\145\164\072\144\151\163\141\142\154\145\144\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\144\151\141" + "\154\157\147\055\150\157\163\164\040\076\040\144\151\141\154\157" + "\147\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\040\163\150\145\145\164\072\144\151\163\141\142\154" + "\145\144\054\040\151\143\157\156\166\151\145\167\072\144\151\163" + "\141\142\154\145\144\040\173\040\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\065\051\073\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\155\151\170\050\100\167" + "\151\156\144\157\167\137\142\147\137\143\157\154\157\162\054\100" + "\166\151\145\167\137\142\147\137\143\157\154\157\162\054\060\056" + "\064\051\073\040\175\012\012\056\166\151\145\167\072\163\145\154" + "\145\143\164\145\144\072\146\157\143\165\163\054\040\056\166\151" + "\145\167\072\163\145\154\145\143\164\145\144\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\072\163\145\154" + "\145\143\164\145\144\054\040\164\145\170\164\166\151\145\167\040" + "\076\040\164\145\170\164\072\163\145\154\145\143\164\145\144\054" + "\040\144\151\141\154\157\147\055\150\157\163\164\040\076\040\144" + "\151\141\154\157\147\056\166\151\145\167\040\163\150\145\145\164" + "\072\163\145\154\145\143\164\145\144\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\144\151\141\154\157\147\055\150" + "\157\163\164\040\076\040\144\151\141\154\157\147\056\144\151\141" + "\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040\163" + "\150\145\145\164\072\163\145\154\145\143\164\145\144\054\040\151" + "\143\157\156\166\151\145\167\072\163\145\154\145\143\164\145\144" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145" + "\156\164\137\142\147\137\143\157\154\157\162\054\060\056\062\065" + "\051\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\066\160\170\073\040\175\012\012\164\145\170\164\166\151" + "\145\167\040\173\040\143\141\162\145\164\055\143\157\154\157\162" + "\072\040\143\165\162\162\145\156\164\103\157\154\157\162\073\040" + "\175\012\012\164\145\170\164\166\151\145\167\040\076\040\164\145" + "\170\164\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\175\012\012\164\145\170\164\166\151\145\167\040" + "\076\040\142\157\162\144\145\162\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\155\151\170" + "\050\100\167\151\156\144\157\167\137\142\147\137\143\157\154\157" + "\162\054\100\166\151\145\167\137\142\147\137\143\157\154\157\162" + "\054\060\056\065\051\073\040\175\012\012\164\145\170\164\166\151" + "\145\167\072\144\162\157\160\050\141\143\164\151\166\145\051\040" + "\173\040\143\141\162\145\164\055\143\157\154\157\162\072\040\100" + "\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073" + "\040\175\012\012\162\165\142\142\145\162\142\141\156\144\040\173" + "\040\142\157\162\144\145\162\072\040\061\160\170\040\163\157\154" + "\151\144\040\100\141\143\143\145\156\164\137\143\157\154\157\162" + "\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156" + "\164\137\143\157\154\157\162\054\060\056\062\051\073\040\175\012" + "\012\146\154\157\167\142\157\170\040\076\040\146\154\157\167\142" + "\157\170\143\150\151\154\144\054\040\147\162\151\144\166\151\145" + "\167\040\076\040\143\150\151\154\144\040\173\040\160\141\144\144" + "\151\156\147\072\040\063\160\170\073\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\066\160\170\073\040\175\012" + "\012\146\154\157\167\142\157\170\040\076\040\146\154\157\167\142" + "\157\170\143\150\151\154\144\054\040\147\162\151\144\166\151\145" + "\167\040\076\040\143\150\151\154\144\040\173\040\157\165\164\154" + "\151\156\145\072\040\060\040\163\157\154\151\144\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\072\040\064\160\170\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\146\154\157" + "\167\142\157\170\040\076\040\146\154\157\167\142\157\170\143\150" + "\151\154\144\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\147\162\151\144\166\151\145" + "\167\040\076\040\143\150\151\154\144\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\054\060\056\070\051\073\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\055\062\160" + "\170\073\040\175\012\012\146\154\157\167\142\157\170\040\076\040" + "\146\154\157\167\142\157\170\143\150\151\154\144\072\163\145\154" + "\145\143\164\145\144\054\040\147\162\151\144\166\151\145\167\040" + "\076\040\143\150\151\154\144\072\163\145\154\145\143\164\145\144" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145" + "\156\164\137\142\147\137\143\157\154\157\162\054\060\056\062\065" + "\051\073\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\060\040\060\040\060\040\061\160\170\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\065\051\073\040\175\012\012\147\162\151\144\166" + "\151\145\167\040\076\040\143\150\151\154\144\056\141\143\164\151" + "\166\141\164\141\142\154\145\072\150\157\166\145\162\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\060\064\051\073\040\175\012\012\147" + "\162\151\144\166\151\145\167\040\076\040\143\150\151\154\144\056" + "\141\143\164\151\166\141\164\141\142\154\145\072\141\143\164\151" + "\166\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\060\070\051\073" + "\040\175\012\012\147\162\151\144\166\151\145\167\040\076\040\143" + "\150\151\154\144\056\141\143\164\151\166\141\164\141\142\154\145" + "\072\163\145\154\145\143\164\145\144\072\150\157\166\145\162\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\054\060\056\063\062\051" + "\073\040\175\012\012\147\162\151\144\166\151\145\167\040\076\040" + "\143\150\151\154\144\056\141\143\164\151\166\141\164\141\142\154" + "\145\072\163\145\154\145\143\164\145\144\072\141\143\164\151\166" + "\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143" + "\145\156\164\137\142\147\137\143\157\154\157\162\054\060\056\063" + "\071\051\073\040\175\012\012\147\162\151\144\166\151\145\167\040" + "\076\040\143\150\151\154\144\056\141\143\164\151\166\141\164\141" + "\142\154\145\072\150\157\166\145\162\054\040\147\162\151\144\166" + "\151\145\167\040\076\040\143\150\151\154\144\056\141\143\164\151" + "\166\141\164\141\142\154\145\072\141\143\164\151\166\145\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\060\040\060\040\060\040\061\160\170\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\073\040\175\012\012\166\151\145\167\163\167\151" + "\164\143\150\145\162\040\173\040\142\157\162\144\145\162\055\163" + "\160\141\143\151\156\147\072\040\063\160\170\073\040\175\012\012" + "\166\151\145\167\163\167\151\164\143\150\145\162\056\156\141\162" + "\162\157\167\040\173\040\155\141\162\147\151\156\055\164\157\160" + "\072\040\055\063\160\170\073\040\155\141\162\147\151\156\055\142" + "\157\164\164\157\155\072\040\055\063\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\066\160\170\073\040\175\012" + "\012\166\151\145\167\163\167\151\164\143\150\145\162\040\142\165" + "\164\164\157\156\056\164\157\147\147\154\145\040\173\040\160\141" + "\144\144\151\156\147\072\040\060\073\040\175\012\012\166\151\145" + "\167\163\167\151\164\143\150\145\162\040\142\165\164\164\157\156" + "\056\164\157\147\147\154\145\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\056\156\141\162\162\157\167\040\173\040\146" + "\157\156\164\055\163\151\172\145\072\040\060\056\067\065\162\145" + "\155\073\040\160\141\144\144\151\156\147\055\164\157\160\072\040" + "\064\160\170\073\040\175\012\012\166\151\145\167\163\167\151\164" + "\143\150\145\162\040\142\165\164\164\157\156\056\164\157\147\147" + "\154\145\040\076\040\163\164\141\143\153\040\076\040\142\157\170" + "\056\156\141\162\162\157\167\040\076\040\154\141\142\145\154\040" + "\173\040\155\151\156\055\150\145\151\147\150\164\072\040\061\070" + "\160\170\073\040\160\141\144\144\151\156\147\055\154\145\146\164" + "\072\040\063\160\170\073\040\160\141\144\144\151\156\147\055\162" + "\151\147\150\164\072\040\063\160\170\073\040\160\141\144\144\151" + "\156\147\055\142\157\164\164\157\155\072\040\062\160\170\073\040" + "\175\012\012\166\151\145\167\163\167\151\164\143\150\145\162\040" + "\142\165\164\164\157\156\056\164\157\147\147\154\145\040\076\040" + "\163\164\141\143\153\040\076\040\142\157\170\056\167\151\144\145" + "\040\173\040\160\141\144\144\151\156\147\072\040\062\160\170\040" + "\061\062\160\170\073\040\142\157\162\144\145\162\055\163\160\141" + "\143\151\156\147\072\040\066\160\170\073\040\175\012\012\057\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\040\101\144\167\126\151\145\167\123\167\151" + "\164\143\150\145\162\102\141\162\040\052\040\052\057\012\166\151" + "\145\167\163\167\151\164\143\150\145\162\142\141\162\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\173\040\160\141\144\144\151" + "\156\147\055\154\145\146\164\072\040\060\073\040\160\141\144\144" + "\151\156\147\055\162\151\147\150\164\072\040\060\073\040\160\141" + "\144\144\151\156\147\055\164\157\160\072\040\067\160\170\073\040" + "\175\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\164\157\160\055\142\141\162\040\056\143\157\154\154\141" + "\160\163\145\055\163\160\141\143\151\156\147\040\166\151\145\167" + "\163\167\151\164\143\150\145\162\142\141\162\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\054\040\164\157\157\154\142\141\162\166" + "\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142\141" + "\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143" + "\151\156\147\040\166\151\145\167\163\167\151\164\143\150\145\162" + "\142\141\162\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\173" + "\040\160\141\144\144\151\156\147\055\164\157\160\072\040\066\160" + "\170\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040" + "\101\144\167\126\151\145\167\123\167\151\164\143\150\145\162\124" + "\151\164\154\145\040\052\040\052\057\012\166\151\145\167\163\167" + "\151\164\143\150\145\162\164\151\164\154\145\040\173\040\155\141" + "\162\147\151\156\055\164\157\160\072\040\055\066\160\170\073\040" + "\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040\055" + "\066\160\170\073\040\175\012\012\166\151\145\167\163\167\151\164" + "\143\150\145\162\164\151\164\154\145\040\166\151\145\167\163\167" + "\151\164\143\150\145\162\040\173\040\155\141\162\147\151\156\055" + "\154\145\146\164\072\040\061\062\160\170\073\040\155\141\162\147" + "\151\156\055\162\151\147\150\164\072\040\061\062\160\170\073\040" + "\175\012\012\166\151\145\167\163\167\151\164\143\150\145\162\164" + "\151\164\154\145\040\166\151\145\167\163\167\151\164\143\150\145" + "\162\056\156\141\162\162\157\167\040\173\040\155\141\162\147\151" + "\156\055\164\157\160\072\040\063\160\170\073\040\155\141\162\147" + "\151\156\055\142\157\164\164\157\155\072\040\063\160\170\073\040" + "\175\012\012\166\151\145\167\163\167\151\164\143\150\145\162\164" + "\151\164\154\145\040\166\151\145\167\163\167\151\164\143\150\145" + "\162\056\167\151\144\145\040\173\040\155\141\162\147\151\156\055" + "\164\157\160\072\040\066\160\170\073\040\155\141\162\147\151\156" + "\055\142\157\164\164\157\155\072\040\066\160\170\073\040\175\012" + "\012\166\151\145\167\163\167\151\164\143\150\145\162\164\151\164" + "\154\145\040\167\151\156\144\157\167\164\151\164\154\145\040\173" + "\040\155\141\162\147\151\156\055\164\157\160\072\040\060\073\040" + "\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040\060" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\040\101\144\167\111\156\144" + "\151\143\141\164\157\162\102\151\156\040\052\040\052\057\012\151" + "\156\144\151\143\141\164\157\162\142\151\156\040\076\040\151\156" + "\144\151\143\141\164\157\162\054\040\151\156\144\151\143\141\164" + "\157\162\142\151\156\040\076\040\155\141\163\153\040\173\040\155" + "\151\156\055\167\151\144\164\150\072\040\066\160\170\073\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\066\160\170\073\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\061" + "\060\060\160\170\073\040\175\012\012\151\156\144\151\143\141\164" + "\157\162\142\151\156\040\076\040\151\156\144\151\143\141\164\157" + "\162\040\173\040\155\141\162\147\151\156\072\040\061\160\170\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\064\051\073\040\175\012\012\151\156\144\151\143\141\164" + "\157\162\142\151\156\040\076\040\155\141\163\153\040\173\040\160" + "\141\144\144\151\156\147\072\040\061\160\170\073\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\142\154\141\143\153\073\040" + "\175\012\012\151\156\144\151\143\141\164\157\162\142\151\156\056" + "\156\145\145\144\163\055\141\164\164\145\156\164\151\157\156\040" + "\076\040\151\156\144\151\143\141\164\157\162\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\072\040\100\141\143\143\145\156" + "\164\137\143\157\154\157\162\073\040\175\012\012\151\156\144\151" + "\143\141\164\157\162\142\151\156\056\142\141\144\147\145\040\076" + "\040\151\156\144\151\143\141\164\157\162\054\040\151\156\144\151" + "\143\141\164\157\162\142\151\156\056\142\141\144\147\145\040\076" + "\040\155\141\163\153\040\173\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\061\063\160\170\073\040\175\012\012\151\156\144" + "\151\143\141\164\157\162\142\151\156\056\142\141\144\147\145\040" + "\076\040\151\156\144\151\143\141\164\157\162\040\076\040\154\141" + "\142\145\154\040\173\040\146\157\156\164\055\163\151\172\145\072" + "\040\060\056\066\162\145\155\073\040\146\157\156\164\055\167\145" + "\151\147\150\164\072\040\142\157\154\144\073\040\160\141\144\144" + "\151\156\147\055\154\145\146\164\072\040\064\160\170\073\040\160" + "\141\144\144\151\156\147\055\162\151\147\150\164\072\040\064\160" + "\170\073\040\143\157\154\157\162\072\040\167\150\151\164\145\073" + "\040\175\012\012\151\156\144\151\143\141\164\157\162\142\151\156" + "\056\142\141\144\147\145\056\156\145\145\144\163\055\141\164\164" + "\145\156\164\151\157\156\040\076\040\151\156\144\151\143\141\164" + "\157\162\040\173\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\073\040\175\012\012\151\156\144\151\143\141\164\157\162\142" + "\151\156\056\142\141\144\147\145\056\156\145\145\144\163\055\141" + "\164\164\145\156\164\151\157\156\040\076\040\151\156\144\151\143" + "\141\164\157\162\040\076\040\154\141\142\145\154\040\173\040\143" + "\157\154\157\162\072\040\100\141\143\143\145\156\164\137\146\147" + "\137\143\157\154\157\162\073\040\175\012\012\167\151\156\144\157" + "\167\056\143\163\144\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\060\040\061\160\170\040\063\160\170\040\063\160" + "\170\040\164\162\141\156\163\160\141\162\145\156\164\054\040\060" + "\040\062\160\170\040\070\160\170\040\062\160\170\040\162\147\142" + "\141\050\060\054\040\060\054\040\060\054\040\060\056\061\063\051" + "\054\040\060\040\063\160\170\040\062\060\160\170\040\061\060\160" + "\170\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\060\071\051\054\040\060\040\066\160\170\040\063\062\160" + "\170\040\061\066\160\170\040\162\147\142\141\050\060\054\040\060" + "\054\040\060\054\040\060\056\060\064\051\054\040\060\040\060\040" + "\060\040\061\160\170\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\070\051\073\040\155\141\162\147\151\156" + "\072\040\060\160\170\073\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\061\062\160\170\073\040\157\165\164\154" + "\151\156\145\072\040\061\160\170\040\163\157\154\151\144\040\162" + "\147\142\141\050\062\065\065\054\040\062\065\065\054\040\062\065" + "\065\054\040\060\056\063\051\073\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\072\040\055\061\160\170\073\040\175" + "\012\012\167\151\156\144\157\167\056\143\163\144\072\142\141\143" + "\153\144\162\157\160\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\060\040\061\160\170\040\063\160\170\040\063\160" + "\170\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\060\071\051\054\040\060\040\062\160\170\040\061\064\160" + "\170\040\065\160\170\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\060\065\051\054\040\060\040\064\160\170" + "\040\062\070\160\170\040\061\062\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\060\063\051\054\040" + "\060\040\066\160\170\040\063\062\160\170\040\061\066\160\170\040" + "\164\162\141\156\163\160\141\162\145\156\164\054\040\060\040\060" + "\040\060\040\061\160\170\040\162\147\142\141\050\060\054\040\060" + "\054\040\060\054\040\060\056\070\051\073\040\164\162\141\156\163" + "\151\164\151\157\156\072\040\142\157\170\055\163\150\141\144\157" + "\167\040\062\060\060\155\163\040\145\141\163\145\055\157\165\164" + "\073\040\175\012\012\167\151\156\144\157\167\056\143\163\144\056" + "\144\151\141\154\157\147\056\155\145\163\163\141\147\145\054\040" + "\167\151\156\144\157\167\056\143\163\144\056\155\145\163\163\141" + "\147\145\144\151\141\154\157\147\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\060\040\062\160\170\040\070\160\170" + "\040\062\160\170\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\060\067\051\054\040\060\040\063\160\170\040" + "\062\060\160\170\040\061\060\160\170\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\060\065\051\054\040\060" + "\040\066\160\170\040\063\062\160\170\040\061\066\160\170\040\162" + "\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056\060" + "\062\051\054\040\060\040\060\040\060\040\061\160\170\040\162\147" + "\142\141\050\060\054\040\060\054\040\060\054\040\060\056\070\051" + "\073\040\175\012\012\167\151\156\144\157\167\056\143\163\144\056" + "\164\151\154\145\144\054\040\167\151\156\144\157\167\056\143\163" + "\144\056\164\151\154\145\144\055\164\157\160\054\040\167\151\156" + "\144\157\167\056\143\163\144\056\164\151\154\145\144\055\154\145" + "\146\164\054\040\167\151\156\144\157\167\056\143\163\144\056\164" + "\151\154\145\144\055\162\151\147\150\164\054\040\167\151\156\144" + "\157\167\056\143\163\144\056\164\151\154\145\144\055\142\157\164" + "\164\157\155\040\173\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\060\073\040\157\165\164\154\151\156\145\072" + "\040\156\157\156\145\073\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\060\040\060\040\060\040\061\160\170\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\065\051\054\040\060\040\060\040\060\040\062\060\160\170" + "\040\164\162\141\156\163\160\141\162\145\156\164\073\040\175\012" + "\012\167\151\156\144\157\167\056\143\163\144\056\164\151\154\145" + "\144\072\142\141\143\153\144\162\157\160\054\040\167\151\156\144" + "\157\167\056\143\163\144\056\164\151\154\145\144\055\164\157\160" + "\072\142\141\143\153\144\162\157\160\054\040\167\151\156\144\157" + "\167\056\143\163\144\056\164\151\154\145\144\055\154\145\146\164" + "\072\142\141\143\153\144\162\157\160\054\040\167\151\156\144\157" + "\167\056\143\163\144\056\164\151\154\145\144\055\162\151\147\150" + "\164\072\142\141\143\153\144\162\157\160\054\040\167\151\156\144" + "\157\167\056\143\163\144\056\164\151\154\145\144\055\142\157\164" + "\164\157\155\072\142\141\143\153\144\162\157\160\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\060\040\060\040\060" + "\040\061\160\170\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\065\051\054\040\060\040" + "\060\040\060\040\062\060\160\170\040\164\162\141\156\163\160\141" + "\162\145\156\164\073\040\175\012\012\167\151\156\144\157\167\056" + "\143\163\144\056\155\141\170\151\155\151\172\145\144\054\040\167" + "\151\156\144\157\167\056\143\163\144\056\146\165\154\154\163\143" + "\162\145\145\156\040\173\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\060\073\040\157\165\164\154\151\156\145" + "\072\040\156\157\156\145\073\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\156\157\156\145\073\040\164\162\141\156\163\151" + "\164\151\157\156\072\040\156\157\156\145\073\040\175\012\012\167" + "\151\156\144\157\167\056\163\157\154\151\144\055\143\163\144\040" + "\173\040\155\141\162\147\151\156\072\040\060\073\040\160\141\144" + "\144\151\156\147\072\040\065\160\170\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\060\073\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\060\040\060\040\065\160\170\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051" + "\054\040\151\156\163\145\164\040\060\040\060\040\060\040\064\160" + "\170\040\100\150\145\141\144\145\162\142\141\162\137\142\147\137" + "\143\157\154\157\162\054\040\151\156\163\145\164\040\060\040\060" + "\040\060\040\061\160\170\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040" + "\175\012\012\167\151\156\144\157\167\056\163\157\154\151\144\055" + "\143\163\144\072\142\141\143\153\144\162\157\160\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\060\040\060\040\065\160\170\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\065\051\054\040\151\156\163\145\164\040\060\040\060\040\060\040" + "\064\160\170\040\100\150\145\141\144\145\162\142\141\162\137\142" + "\141\143\153\144\162\157\160\137\143\157\154\157\162\054\040\151" + "\156\163\145\164\040\060\040\060\040\060\040\061\160\170\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\065\051\073\040\175\012\012\167\151\156\144\157" + "\167\056\163\163\144\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\060\040\060\040\060\040\061\160\170\040\162\147" + "\142\141\050\060\054\040\060\054\040\060\054\040\060\056\070\051" + "\073\040\175\012\012\057\052\040\120\165\142\154\151\143\040\143" + "\157\154\157\162\163\040\146\162\157\155\040\104\145\146\141\165" + "\154\164\040\052\057\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\164\150\145\155\145\137\142\147\137\143\157\154" + "\157\162\040\100\167\151\156\144\157\167\137\142\147\137\143\157" + "\154\157\162\073\012\100\144\145\146\151\156\145\055\143\157\154" + "\157\162\040\164\150\145\155\145\137\146\147\137\143\157\154\157" + "\162\040\100\167\151\156\144\157\167\137\146\147\137\143\157\154" + "\157\162\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\164\150\145\155\145\137\142\141\163\145\137\143\157\154" + "\157\162\040\100\166\151\145\167\137\142\147\137\143\157\154\157" + "\162\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\164\150\145\155\145\137\164\145\170\164\137\143\157\154\157" + "\162\040\100\166\151\145\167\137\146\147\137\143\157\154\157\162" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\164\150\145\155\145\137\163\145\154\145\143\164\145\144\137\142" + "\147\137\143\157\154\157\162\040\100\141\143\143\145\156\164\137" + "\142\147\137\143\157\154\157\162\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\164\150\145\155\145\137\163\145" + "\154\145\143\164\145\144\137\146\147\137\143\157\154\157\162\040" + "\100\141\143\143\145\156\164\137\146\147\137\143\157\154\157\162" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\151\156\163\145\156\163\151\164\151\166\145\137\142\147\137\143" + "\157\154\157\162\040\155\151\170\050\100\167\151\156\144\157\167" + "\137\142\147\137\143\157\154\157\162\054\100\166\151\145\167\137" + "\142\147\137\143\157\154\157\162\054\060\056\064\051\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\151\156\163" + "\145\156\163\151\164\151\166\145\137\146\147\137\143\157\154\157" + "\162\040\141\154\160\150\141\050\100\167\151\156\144\157\167\137" + "\146\147\137\143\157\154\157\162\054\060\056\065\051\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\151\156\163" + "\145\156\163\151\164\151\166\145\137\142\141\163\145\137\143\157" + "\154\157\162\040\100\166\151\145\167\137\142\147\137\143\157\154" + "\157\162\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\142\157\162\144\145\162\163\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065" + "\051\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\164\150\145\155\145\137\165\156\146\157\143\165\163\145\144" + "\137\142\147\137\143\157\154\157\162\040\100\167\151\156\144\157" + "\167\137\142\147\137\143\157\154\157\162\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\164\150\145\155\145\137" + "\165\156\146\157\143\165\163\145\144\137\146\147\137\143\157\154" + "\157\162\040\100\167\151\156\144\157\167\137\146\147\137\143\157" + "\154\157\162\073\012\100\144\145\146\151\156\145\055\143\157\154" + "\157\162\040\164\150\145\155\145\137\165\156\146\157\143\165\163" + "\145\144\137\142\141\163\145\137\143\157\154\157\162\040\100\166" + "\151\145\167\137\142\147\137\143\157\154\157\162\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\164\150\145\155" + "\145\137\165\156\146\157\143\165\163\145\144\137\164\145\170\164" + "\137\143\157\154\157\162\040\100\166\151\145\167\137\146\147\137" + "\143\157\154\157\162\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\164\150\145\155\145\137\165\156\146\157\143" + "\165\163\145\144\137\163\145\154\145\143\164\145\144\137\142\147" + "\137\143\157\154\157\162\040\100\141\143\143\145\156\164\137\142" + "\147\137\143\157\154\157\162\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\164\150\145\155\145\137\165\156\146" + "\157\143\165\163\145\144\137\163\145\154\145\143\164\145\144\137" + "\146\147\137\143\157\154\157\162\040\100\141\143\143\145\156\164" + "\137\146\147\137\143\157\154\157\162\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\165\156\146\157\143\165\163" + "\145\144\137\151\156\163\145\156\163\151\164\151\166\145\137\143" + "\157\154\157\162\040\100\151\156\163\145\156\163\151\164\151\166" + "\145\137\142\147\137\143\157\154\157\162\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\165\156\146\157\143\165" + "\163\145\144\137\142\157\162\144\145\162\163\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\012\000\000\050\165\165\141\171\051\144\145\146" + "\141\165\154\164\163\055\144\141\162\153\056\143\163\163\000\000" + "\157\010\000\000\000\000\000\000\057\052\040\107\124\113\040\116" + "\101\115\105\104\040\103\117\114\117\122\123\040\055\055\055\055" + "\055\055\055\055\055\055\055\055\055\055\055\055\040\165\163\145" + "\040\162\145\163\160\157\156\163\151\142\154\171\041\040\052\057" + "\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\040\100" + "\142\154\165\145\137\063\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\141\143\143\145\156\164\137\146\147\137" + "\143\157\154\157\162\040\167\150\151\164\145\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\141\143\143\145\156" + "\164\137\143\157\154\157\162\040\043\067\070\141\145\145\144\073" + "\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040\144" + "\145\163\164\162\165\143\164\151\166\145\137\142\147\137\143\157" + "\154\157\162\040\100\162\145\144\137\064\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\144\145\163\164\162\165" + "\143\164\151\166\145\137\146\147\137\143\157\154\157\162\040\167" + "\150\151\164\145\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\144\145\163\164\162\165\143\164\151\166\145\137" + "\143\157\154\157\162\040\043\146\146\067\142\066\063\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\163\165\143" + "\143\145\163\163\137\142\147\137\143\157\154\157\162\040\100\147" + "\162\145\145\156\137\065\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\163\165\143\143\145\163\163\137\146\147" + "\137\143\157\154\157\162\040\167\150\151\164\145\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\163\165\143\143" + "\145\163\163\137\143\157\154\157\162\040\100\147\162\145\145\156" + "\137\061\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\167\141\162\156\151\156\147\137\142\147\137\143\157\154" + "\157\162\040\043\143\144\071\063\060\071\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\167\141\162\156\151\156" + "\147\137\146\147\137\143\157\154\157\162\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\070\051\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\167\141\162" + "\156\151\156\147\137\143\157\154\157\162\040\100\171\145\154\154" + "\157\167\137\062\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\145\162\162\157\162\137\142\147\137\143\157\154" + "\157\162\040\100\162\145\144\137\064\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\145\162\162\157\162\137\146" + "\147\137\143\157\154\157\162\040\167\150\151\164\145\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\145\162\162" + "\157\162\137\143\157\154\157\162\040\043\146\146\067\142\066\063" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\167\151\156\144\157\167\137\142\147\137\143\157\154\157\162\040" + "\043\062\064\062\064\062\064\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\167\151\156\144\157\167\137\146\147" + "\137\143\157\154\157\162\040\167\150\151\164\145\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\166\151\145\167" + "\137\142\147\137\143\157\154\157\162\040\043\061\145\061\145\061" + "\145\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\166\151\145\167\137\146\147\137\143\157\154\157\162\040\167" + "\150\151\164\145\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\150\145\141\144\145\162\142\141\162\137\142\147" + "\137\143\157\154\157\162\040\043\063\060\063\060\063\060\073\012" + "\100\144\145\146\151\156\145\055\143\157\154\157\162\040\150\145" + "\141\144\145\162\142\141\162\137\146\147\137\143\157\154\157\162" + "\040\167\150\151\164\145\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\150\145\141\144\145\162\142\141\162\137" + "\142\157\162\144\145\162\137\143\157\154\157\162\040\167\150\151" + "\164\145\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\150\145\141\144\145\162\142\141\162\137\142\141\143\153" + "\144\162\157\160\137\143\157\154\157\162\040\100\167\151\156\144" + "\157\167\137\142\147\137\143\157\154\157\162\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\150\145\141\144\145" + "\162\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\063\066\051\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\150\145\141\144\145\162\142\141\162\137\144\141" + "\162\153\145\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\071\051\073\012\100\144\145\146\151\156\145\055\143\157\154" + "\157\162\040\163\151\144\145\142\141\162\137\142\147\137\143\157" + "\154\157\162\040\043\063\060\063\060\063\060\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\163\151\144\145\142" + "\141\162\137\146\147\137\143\157\154\157\162\040\167\150\151\164" + "\145\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\163\151\144\145\142\141\162\137\142\141\143\153\144\162\157" + "\160\137\143\157\154\157\162\040\043\062\141\062\141\062\141\073" + "\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040\163" + "\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\040\162\147\142\141\050\060\054\040\060\054\040\060\054" + "\040\060\056\062\065\051\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\163\151\144\145\142\141\162\137\142\157" + "\162\144\145\162\137\143\157\154\157\162\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\063\066\051\073\012" + "\100\144\145\146\151\156\145\055\143\157\154\157\162\040\163\145" + "\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137" + "\142\147\137\143\157\154\157\162\040\043\062\141\062\141\062\141" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141" + "\162\137\146\147\137\143\157\154\157\162\040\167\150\151\164\145" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141" + "\162\137\142\141\143\153\144\162\157\160\137\143\157\154\157\162" + "\040\043\062\067\062\067\062\067\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\163\145\143\157\156\144\141\162" + "\171\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\062\065\051\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\163\145\143\157\156\144\141" + "\162\171\137\163\151\144\145\142\141\162\137\142\157\162\144\145" + "\162\137\143\157\154\157\162\040\162\147\142\141\050\060\054\040" + "\060\054\040\060\054\040\060\056\063\066\051\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\143\141\162\144\137" + "\142\147\137\143\157\154\157\162\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\060" + "\070\051\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\143\141\162\144\137\146\147\137\143\157\154\157\162\040" + "\167\150\151\164\145\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\143\141\162\144\137\163\150\141\144\145\137" + "\143\157\154\157\162\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\063\066\051\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\144\151\141\154\157\147\137" + "\142\147\137\143\157\154\157\162\040\043\063\070\063\070\063\070" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\144\151\141\154\157\147\137\146\147\137\143\157\154\157\162\040" + "\167\150\151\164\145\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\160\157\160\157\166\145\162\137\142\147\137" + "\143\157\154\157\162\040\043\063\070\063\070\063\070\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\160\157\160" + "\157\166\145\162\137\146\147\137\143\157\154\157\162\040\167\150" + "\151\164\145\073\012\100\144\145\146\151\156\145\055\143\157\154" + "\157\162\040\160\157\160\157\166\145\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\040\162\147\142\141\050\060\054\040\060" + "\054\040\060\054\040\060\056\062\065\051\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\164\150\165\155\142\156" + "\141\151\154\137\142\147\137\143\157\154\157\162\040\043\063\070" + "\063\070\063\070\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\164\150\165\155\142\156\141\151\154\137\146\147" + "\137\143\157\154\157\162\040\167\150\151\164\145\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\163\150\141\144" + "\145\137\143\157\154\157\162\040\162\147\142\141\050\060\054\040" + "\060\054\040\060\054\040\060\056\062\065\051\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\163\143\162\157\154" + "\154\142\141\162\137\157\165\164\154\151\156\145\137\143\157\154" + "\157\162\040\162\147\142\141\050\060\054\040\060\054\040\060\054" + "\040\060\056\065\051\073\012\000\000\050\165\165\141\171\051\144" + "\141\163\150\055\163\171\155\142\157\154\151\143\056\163\166\147" + "\002\003\000\000\000\000\000\000\074\163\166\147\040\150\145\151" + "\147\150\164\075\042\061\064\042\040\167\151\144\164\150\075\042" + "\061\064\042\040\170\155\154\156\163\075\042\150\164\164\160\072" + "\057\057\167\167\167\056\167\063\056\157\162\147\057\062\060\060" + "\060\057\163\166\147\042\076\074\147\040\163\164\171\154\145\075" + "\042\144\151\163\160\154\141\171\072\151\156\154\151\156\145\042" + "\076\074\160\141\164\150\040\163\164\171\154\145\075\042\143\157" + "\154\157\162\072\043\060\060\060\073\143\154\151\160\055\162\165" + "\154\145\072\156\157\156\172\145\162\157\073\144\151\163\160\154" + "\141\171\072\151\156\154\151\156\145\073\157\166\145\162\146\154" + "\157\167\072\166\151\163\151\142\154\145\073\166\151\163\151\142" + "\151\154\151\164\171\072\166\151\163\151\142\154\145\073\157\160" + "\141\143\151\164\171\072\061\073\151\163\157\154\141\164\151\157" + "\156\072\141\165\164\157\073\155\151\170\055\142\154\145\156\144" + "\055\155\157\144\145\072\156\157\162\155\141\154\073\143\157\154" + "\157\162\055\151\156\164\145\162\160\157\154\141\164\151\157\156" + "\072\163\122\107\102\073\143\157\154\157\162\055\151\156\164\145" + "\162\160\157\154\141\164\151\157\156\055\146\151\154\164\145\162" + "\163\072\154\151\156\145\141\162\122\107\102\073\163\157\154\151" + "\144\055\143\157\154\157\162\072\043\060\060\060\073\163\157\154" + "\151\144\055\157\160\141\143\151\164\171\072\061\073\146\151\154" + "\154\072\043\142\145\142\145\142\145\073\146\151\154\154\055\157" + "\160\141\143\151\164\171\072\061\073\146\151\154\154\055\162\165" + "\154\145\072\156\157\156\172\145\162\157\073\163\164\162\157\153" + "\145\072\156\157\156\145\073\163\164\162\157\153\145\055\167\151" + "\144\164\150\072\064\073\163\164\162\157\153\145\055\154\151\156" + "\145\143\141\160\072\162\157\165\156\144\073\163\164\162\157\153" + "\145\055\154\151\156\145\152\157\151\156\072\155\151\164\145\162" + "\073\163\164\162\157\153\145\055\155\151\164\145\162\154\151\155" + "\151\164\072\064\073\163\164\162\157\153\145\055\144\141\163\150" + "\141\162\162\141\171\072\156\157\156\145\073\163\164\162\157\153" + "\145\055\144\141\163\150\157\146\146\163\145\164\072\060\073\163" + "\164\162\157\153\145\055\157\160\141\143\151\164\171\072\061\073" + "\155\141\162\153\145\162\072\156\157\156\145\073\143\157\154\157" + "\162\055\162\145\156\144\145\162\151\156\147\072\141\165\164\157" + "\073\151\155\141\147\145\055\162\145\156\144\145\162\151\156\147" + "\072\141\165\164\157\073\163\150\141\160\145\055\162\145\156\144" + "\145\162\151\156\147\072\141\165\164\157\073\164\145\170\164\055" + "\162\145\156\144\145\162\151\156\147\072\141\165\164\157\073\145" + "\156\141\142\154\145\055\142\141\143\153\147\162\157\165\156\144" + "\072\141\143\143\165\155\165\154\141\164\145\042\040\144\075\042" + "\115\064\060\067\040\063\066\067\150\070\143\061\056\061\060\070" + "\040\060\040\062\040\056\070\071\062\040\062\040\062\163\055\056" + "\070\071\062\040\062\055\062\040\062\150\055\070\143\055\061\056" + "\061\060\070\040\060\055\062\055\056\070\071\062\055\062\055\062" + "\163\056\070\071\062\055\062\040\062\055\062\172\042\040\164\162" + "\141\156\163\146\157\162\155\075\042\164\162\141\156\163\154\141" + "\164\145\050\055\064\060\064\040\055\063\066\062\051\042\057\076" + "\074\057\147\076\074\057\163\166\147\076\000\000\050\165\165\141" + "\171\051\147\164\153\056\143\163\163\000\000\000\000\000\000\000" + "\000\000\000\000\000\000\000\000\000\000\050\165\165\141\171\051" + "\147\164\153\057\003\000\000\000\147\164\153\055\150\143\056\143" + "\163\163\000\000\000\000\000\000\000\000\000\000\000\000\000\000" + "\000\000\050\165\165\141\171\051\142\165\154\154\145\164\100\062" + "\055\163\171\155\142\157\154\151\143\056\163\171\155\142\157\154" + "\151\143\056\160\156\147\000\000\014\001\000\000\000\000\000\000" + "\211\120\116\107\015\012\032\012\000\000\000\015\111\110\104\122" + "\000\000\000\034\000\000\000\034\010\006\000\000\000\162\015\337" + "\224\000\000\000\004\163\102\111\124\010\010\010\010\174\010\144" + "\210\000\000\000\303\111\104\101\124\110\211\355\324\101\016\202" + "\060\020\205\341\077\022\075\214\160\053\343\161\064\012\341\062" + "\202\247\000\057\240\067\020\227\065\260\150\233\030\023\152\072" + "\343\302\230\276\144\066\204\351\067\055\051\220\222\362\117\051" + "\200\003\320\003\017\127\275\173\126\174\023\132\001\065\360\004" + "\306\231\062\100\345\336\125\143\347\000\364\136\255\026\255\043" + "\060\137\245\024\053\260\107\025\013\032\040\237\133\164\021\000" + "\267\100\046\030\064\003\066\202\076\056\304\357\316\127\047\001" + "\007\005\170\237\133\064\164\244\243\144\312\117\275\041\360\246" + "\000\257\022\260\121\200\047\111\223\346\132\254\245\223\126\002" + "\360\050\305\300\376\246\332\010\254\001\226\032\320\243\045\341" + "\343\065\330\235\251\261\327\344\300\036\173\251\007\127\035\260" + "\103\361\315\122\122\176\057\023\272\157\217\166\217\247\272\363" + "\000\000\000\000\111\105\116\104\256\102\140\202\000\000\050\165" + "\165\141\171\051\163\164\171\154\145\163\057\000\031\000\000\000" + "\007\000\000\000\032\000\000\000\010\000\000\000\027\000\000\000" + "\143\150\145\143\153\055\163\171\155\142\157\154\151\143\056\163" + "\166\147\000\000\000\000\000\000\222\001\000\000\000\000\000\000" + "\074\163\166\147\040\150\145\151\147\150\164\075\042\061\064\042" + "\040\167\151\144\164\150\075\042\061\064\042\040\170\155\154\156" + "\163\075\042\150\164\164\160\072\057\057\167\167\167\056\167\063" + "\056\157\162\147\057\062\060\060\060\057\163\166\147\042\076\074" + "\147\040\163\164\171\154\145\075\042\144\151\163\160\154\141\171" + "\072\151\156\154\151\156\145\073\157\160\141\143\151\164\171\072" + "\061\042\076\074\160\141\164\150\040\163\164\171\154\145\075\042" + "\143\157\154\157\162\072\043\060\060\060\073\144\151\163\160\154" + "\141\171\072\151\156\154\151\156\145\073\146\151\154\154\072\043" + "\142\145\142\145\142\145\073\146\151\154\154\055\157\160\141\143" + "\151\164\171\072\061\073\163\164\162\157\153\145\055\154\151\156" + "\145\143\141\160\072\162\157\165\156\144\073\055\151\156\153\163" + "\143\141\160\145\055\163\164\162\157\153\145\072\156\157\156\145" + "\042\040\144\075\042\115\064\061\064\056\061\064\065\040\063\064" + "\061\056\071\141\061\056\062\065\040\061\056\062\065\040\060\040" + "\060\040\060\055\061\056\067\066\066\056\060\071\062\154\055\065" + "\056\066\070\040\066\056\063\060\065\055\062\056\070\070\061\055" + "\062\056\071\060\071\141\061\056\062\065\040\061\056\062\065\040" + "\060\040\060\040\060\055\061\056\067\066\066\040\061\056\067\067" + "\154\064\056\067\064\063\040\064\056\067\066\070\040\067\056\064" + "\064\062\055\070\056\062\066\062\141\061\056\062\065\040\061\056" + "\062\065\040\060\040\060\040\060\055\056\060\071\062\055\061\056" + "\067\066\064\172\042\040\164\162\141\156\163\146\157\162\155\075" + "\042\164\162\141\156\163\154\141\164\145\050\055\064\060\061\040" + "\055\063\063\071\051\042\057\076\074\057\147\076\074\057\163\166" + "\147\076\000\000\050\165\165\141\171\051\164\150\145\155\145\057" + "\024\000\000\000\157\162\147\057\025\000\000\000\013\000\000\000" + "\057\000\000\000\021\000\000\000\143\150\145\143\153\100\062\055" + "\163\171\155\142\157\154\151\143\056\163\171\155\142\157\154\151" + "\143\056\160\156\147\000\000\000\161\001\000\000\000\000\000\000" + "\211\120\116\107\015\012\032\012\000\000\000\015\111\110\104\122" + "\000\000\000\034\000\000\000\034\010\006\000\000\000\162\015\337" + "\224\000\000\000\004\163\102\111\124\010\010\010\010\174\010\144" + "\210\000\000\001\050\111\104\101\124\110\211\355\324\075\112\003" + "\101\030\006\340\107\215\077\104\260\320\312\306\033\210\067\360" + "\006\152\043\242\202\225\225\205\136\300\312\024\336\300\106\123" + "\170\003\377\216\040\210\140\051\244\027\202\255\166\001\115\320" + "\142\263\260\304\174\113\214\033\121\310\013\323\315\067\317\314" + "\267\263\303\060\303\374\241\114\342\030\017\070\307\374\040\261" + "\061\134\341\043\063\156\007\011\236\166\140\351\230\031\004\126" + "\011\260\147\214\024\215\355\005\130\013\153\105\143\253\150\006" + "\340\101\321\330\062\032\001\126\211\212\016\361\204\107\254\174" + "\003\133\304\113\200\125\005\337\155\263\143\142\023\073\075\140" + "\013\250\007\330\015\112\121\341\111\227\202\046\266\163\260\071" + "\324\002\354\016\345\274\235\356\006\205\115\311\351\073\123\156" + "\057\332\255\246\326\336\114\156\106\161\021\054\360\216\215\314" + "\334\222\244\135\335\346\326\045\155\356\051\343\270\314\071\351" + "\226\344\002\124\203\071\257\130\352\025\113\063\201\353\140\301" + "\067\161\027\032\222\137\243\257\114\370\372\360\346\215\026\326" + "\373\305\372\101\367\177\212\145\321\250\275\351\070\052\012\313" + "\242\321\215\074\053\032\313\103\163\137\221\242\321\173\114\017" + "\022\113\063\045\171\002\147\177\003\373\277\371\004\262\035\252" + "\157\051\217\031\175\000\000\000\000\111\105\116\104\256\102\140" + "\202\000\000\050\165\165\141\171\051\101\144\167\141\151\164\141" + "\055\145\155\160\164\171\057\000\001\000\000\000\000\000\000\000" + "\014\000\000\000\012\000\000\000\147\156\157\155\145\057\000\000" + "\006\000\000\000\142\165\154\154\145\164\055\163\171\155\142\157" + "\154\151\143\056\163\166\147\000\261\002\000\000\000\000\000\000" + "\074\163\166\147\040\150\145\151\147\150\164\075\042\061\064\042" + "\040\167\151\144\164\150\075\042\061\064\042\040\170\155\154\156" + "\163\075\042\150\164\164\160\072\057\057\167\167\167\056\167\063" + "\056\157\162\147\057\062\060\060\060\057\163\166\147\042\076\074" + "\147\040\163\164\171\154\145\075\042\144\151\163\160\154\141\171" + "\072\151\156\154\151\156\145\042\076\074\160\141\164\150\040\144" + "\075\042\115\063\070\070\040\063\064\062\143\055\062\056\062\060" + "\067\040\060\055\064\040\061\056\067\071\063\055\064\040\064\163" + "\061\056\067\071\063\040\064\040\064\040\064\143\062\056\062\060" + "\070\040\060\040\064\055\061\056\067\071\063\040\064\055\064\163" + "\055\061\056\067\071\062\055\064\055\064\055\064\172\042\040\163" + "\164\171\154\145\075\042\143\157\154\157\162\072\043\142\145\142" + "\145\142\145\073\146\157\156\164\055\163\164\171\154\145\072\156" + "\157\162\155\141\154\073\146\157\156\164\055\166\141\162\151\141" + "\156\164\072\156\157\162\155\141\154\073\146\157\156\164\055\167" + "\145\151\147\150\164\072\064\060\060\073\146\157\156\164\055\163" + "\164\162\145\164\143\150\072\156\157\162\155\141\154\073\146\157" + "\156\164\055\163\151\172\145\072\155\145\144\151\165\155\073\154" + "\151\156\145\055\150\145\151\147\150\164\072\156\157\162\155\141" + "\154\073\146\157\156\164\055\146\141\155\151\154\171\072\047\101" + "\156\144\141\154\145\040\115\157\156\157\047\073\164\145\170\164" + "\055\151\156\144\145\156\164\072\060\073\164\145\170\164\055\141" + "\154\151\147\156\072\163\164\141\162\164\073\164\145\170\164\055" + "\144\145\143\157\162\141\164\151\157\156\072\156\157\156\145\073" + "\164\145\170\164\055\144\145\143\157\162\141\164\151\157\156\055" + "\154\151\156\145\072\156\157\156\145\073\154\145\164\164\145\162" + "\055\163\160\141\143\151\156\147\072\156\157\162\155\141\154\073" + "\167\157\162\144\055\163\160\141\143\151\156\147\072\156\157\162" + "\155\141\154\073\164\145\170\164\055\164\162\141\156\163\146\157" + "\162\155\072\156\157\156\145\073\144\151\162\145\143\164\151\157" + "\156\072\154\164\162\073\164\145\170\164\055\141\156\143\150\157" + "\162\072\163\164\141\162\164\073\144\151\163\160\154\141\171\072" + "\151\156\154\151\156\145\073\157\166\145\162\146\154\157\167\072" + "\166\151\163\151\142\154\145\073\166\151\163\151\142\151\154\151" + "\164\171\072\166\151\163\151\142\154\145\073\146\151\154\154\072" + "\043\142\145\142\145\142\145\073\146\151\154\154\055\157\160\141" + "\143\151\164\171\072\061\073\146\151\154\154\055\162\165\154\145" + "\072\156\157\156\172\145\162\157\073\163\164\162\157\153\145\072" + "\156\157\156\145\073\163\164\162\157\153\145\055\167\151\144\164" + "\150\072\062\056\063\070\071\073\155\141\162\153\145\162\072\156" + "\157\156\145\042\040\164\162\141\156\163\146\157\162\155\075\042" + "\164\162\141\156\163\154\141\164\145\050\055\063\070\061\040\055" + "\063\063\071\051\042\057\076\074\057\147\076\074\057\163\166\147" + "\076\000\000\050\165\165\141\171\051\144\145\146\141\165\154\164" + "\163\055\154\151\147\150\164\056\143\163\163\000\000\000\000\000" + "\320\010\000\000\000\000\000\000\057\052\040\107\124\113\040\116" + "\101\115\105\104\040\103\117\114\117\122\123\040\055\055\055\055" + "\055\055\055\055\055\055\055\055\055\055\055\055\040\165\163\145" + "\040\162\145\163\160\157\156\163\151\142\154\171\041\040\052\057" + "\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\040\100" + "\142\154\165\145\137\063\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\141\143\143\145\156\164\137\146\147\137" + "\143\157\154\157\162\040\167\150\151\164\145\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\141\143\143\145\156" + "\164\137\143\157\154\157\162\040\100\142\154\165\145\137\064\073" + "\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040\144" + "\145\163\164\162\165\143\164\151\166\145\137\142\147\137\143\157" + "\154\157\162\040\100\162\145\144\137\063\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\144\145\163\164\162\165" + "\143\164\151\166\145\137\146\147\137\143\157\154\157\162\040\167" + "\150\151\164\145\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\144\145\163\164\162\165\143\164\151\166\145\137" + "\143\157\154\157\162\040\100\162\145\144\137\064\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\163\165\143\143" + "\145\163\163\137\142\147\137\143\157\154\157\162\040\100\147\162" + "\145\145\156\137\064\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\163\165\143\143\145\163\163\137\146\147\137" + "\143\157\154\157\162\040\167\150\151\164\145\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\163\165\143\143\145" + "\163\163\137\143\157\154\157\162\040\043\061\142\070\065\065\063" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\167\141\162\156\151\156\147\137\142\147\137\143\157\154\157\162" + "\040\100\171\145\154\154\157\167\137\065\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\167\141\162\156\151\156" + "\147\137\146\147\137\143\157\154\157\162\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\070\051\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\167\141\162" + "\156\151\156\147\137\143\157\154\157\162\040\043\071\143\066\145" + "\060\063\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\145\162\162\157\162\137\142\147\137\143\157\154\157\162" + "\040\100\162\145\144\137\063\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\145\162\162\157\162\137\146\147\137" + "\143\157\154\157\162\040\167\150\151\164\145\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\145\162\162\157\162" + "\137\143\157\154\157\162\040\100\162\145\144\137\064\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\167\151\156" + "\144\157\167\137\142\147\137\143\157\154\157\162\040\043\146\141" + "\146\141\146\141\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\167\151\156\144\157\167\137\146\147\137\143\157" + "\154\157\162\040\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\070\051\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\166\151\145\167\137\142\147\137\143\157" + "\154\157\162\040\043\146\146\146\146\146\146\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\166\151\145\167\137" + "\146\147\137\143\157\154\157\162\040\162\147\142\141\050\060\054" + "\040\060\054\040\060\054\040\060\056\070\051\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\150\145\141\144\145" + "\162\142\141\162\137\142\147\137\143\157\154\157\162\040\043\146" + "\146\146\146\146\146\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\150\145\141\144\145\162\142\141\162\137\146" + "\147\137\143\157\154\157\162\040\162\147\142\141\050\060\054\040" + "\060\054\040\060\054\040\060\056\070\051\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\150\145\141\144\145\162" + "\142\141\162\137\142\157\162\144\145\162\137\143\157\154\157\162" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\070\051\073\012\100\144\145\146\151\156\145\055\143\157\154" + "\157\162\040\150\145\141\144\145\162\142\141\162\137\142\141\143" + "\153\144\162\157\160\137\143\157\154\157\162\040\100\167\151\156" + "\144\157\167\137\142\147\137\143\157\154\157\162\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\150\145\141\144" + "\145\162\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\061\062\051\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\150\145\141\144\145\162\142\141\162\137\144" + "\141\162\153\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\061\062\051\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\163\151\144\145\142\141\162\137\142\147\137" + "\143\157\154\157\162\040\043\145\142\145\142\145\142\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\163\151\144" + "\145\142\141\162\137\146\147\137\143\157\154\157\162\040\162\147" + "\142\141\050\060\054\040\060\054\040\060\054\040\060\056\070\051" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\163\151\144\145\142\141\162\137\142\141\143\153\144\162\157\160" + "\137\143\157\154\157\162\040\043\146\062\146\062\146\062\073\012" + "\100\144\145\146\151\156\145\055\143\157\154\157\162\040\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\060\067\051\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\163\151\144\145\142\141\162\137\142\157\162" + "\144\145\162\137\143\157\154\157\162\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\060\067\051\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\142" + "\147\137\143\157\154\157\162\040\043\146\063\146\063\146\063\073" + "\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040\163" + "\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162" + "\137\146\147\137\143\157\154\157\162\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\070\051\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\163\145\143\157" + "\156\144\141\162\171\137\163\151\144\145\142\141\162\137\142\141" + "\143\153\144\162\157\160\137\143\157\154\157\162\040\043\146\066" + "\146\066\146\066\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\163\145\143\157\156\144\141\162\171\137\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\060\067\051\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\163\145\143\157\156\144\141\162\171\137\163" + "\151\144\145\142\141\162\137\142\157\162\144\145\162\137\143\157" + "\154\157\162\040\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\060\067\051\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\143\141\162\144\137\142\147\137\143" + "\157\154\157\162\040\043\146\146\146\146\146\146\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\143\141\162\144" + "\137\146\147\137\143\157\154\157\162\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\070\051\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\143\141\162\144" + "\137\163\150\141\144\145\137\143\157\154\157\162\040\162\147\142" + "\141\050\060\054\040\060\054\040\060\054\040\060\056\060\067\051" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\144\151\141\154\157\147\137\142\147\137\143\157\154\157\162\040" + "\043\146\141\146\141\146\141\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\144\151\141\154\157\147\137\146\147" + "\137\143\157\154\157\162\040\162\147\142\141\050\060\054\040\060" + "\054\040\060\054\040\060\056\070\051\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\160\157\160\157\166\145\162" + "\137\142\147\137\143\157\154\157\162\040\043\146\146\146\146\146" + "\146\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\160\157\160\157\166\145\162\137\146\147\137\143\157\154\157" + "\162\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\070\051\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\040\162\147\142\141\050\060\054\040" + "\060\054\040\060\054\040\060\056\060\067\051\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\164\150\165\155\142" + "\156\141\151\154\137\142\147\137\143\157\154\157\162\040\043\146" + "\146\146\146\146\146\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\164\150\165\155\142\156\141\151\154\137\146" + "\147\137\143\157\154\157\162\040\162\147\142\141\050\060\054\040" + "\060\054\040\060\054\040\060\056\070\051\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\163\150\141\144\145\137" + "\143\157\154\157\162\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\060\067\051\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\163\143\162\157\154\154\142" + "\141\162\137\157\165\164\154\151\156\145\137\143\157\154\157\162" + "\040\167\150\151\164\145\073\012\000\000\050\165\165\141\171\051" + "\143\150\145\143\153\055\163\171\155\142\157\154\151\143\056\163" + "\171\155\142\157\154\151\143\056\160\156\147\000\000\000\000\000" + "\364\000\000\000\000\000\000\000\211\120\116\107\015\012\032\012" + "\000\000\000\015\111\110\104\122\000\000\000\016\000\000\000\016" + "\010\006\000\000\000\037\110\055\321\000\000\000\004\163\102\111" + "\124\010\010\010\010\174\010\144\210\000\000\000\253\111\104\101" + "\124\050\221\315\321\061\152\002\121\020\207\361\337\256\101\122" + "\211\105\114\120\260\262\311\021\254\074\102\056\340\121\074\107" + "\022\202\107\320\103\054\130\130\212\030\260\025\354\044\147\310" + "\132\354\133\030\010\054\273\135\276\152\230\377\174\157\170\357" + "\361\337\231\141\211\376\103\007\351\025\073\074\141\334\126\232" + "\340\202\022\277\170\153\043\015\160\110\122\211\125\035\274\340" + "\214\175\252\043\217\050\202\364\036\303\105\010\276\361\234\372" + "\071\066\041\333\242\027\305\014\137\141\340\204\121\072\275\356" + "\025\151\373\037\162\254\303\340\055\324\107\014\233\036\041\303" + "\107\020\112\134\061\155\222\242\374\231\244\037\325\337\265\046" + "\127\335\157\336\105\152\315\035\020\340\051\060\331\131\356\150" + "\000\000\000\000\111\105\116\104\256\102\140\202\000\000\050\165" + "\165\141\171\051\141\163\163\145\164\163\057\000\026\000\000\000" + "\004\000\000\000\015\000\000\000\017\000\000\000\030\000\000\000" + "\023\000\000\000\011\000\000\000\005\000\000\000\033\000\000\000" + "\002\000\000\000\142\141\163\145\056\143\163\163\000\000\000\000" + "\010\122\005\000\000\000\000\000\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\142\154\165\145\137\061\040\043\071\071" + "\143\061\146\061\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\142\154\165\145\137\062\040\043\066\062\141\060" + "\145\141\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\142\154\165\145\137\063\040\043\063\065\070\064\145\064" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\142\154\165\145\137\064\040\043\061\143\067\061\144\070\073\012" + "\100\144\145\146\151\156\145\055\143\157\154\157\162\040\142\154" + "\165\145\137\065\040\043\061\141\065\146\142\064\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\147\162\145\145" + "\156\137\061\040\043\070\146\146\060\141\064\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\147\162\145\145\156" + "\137\062\040\043\065\067\145\063\070\071\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\147\162\145\145\156\137" + "\063\040\043\063\063\144\061\067\141\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\147\162\145\145\156\137\064" + "\040\043\062\145\143\062\067\145\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\147\162\145\145\156\137\065\040" + "\043\062\066\141\062\066\071\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\061\040" + "\043\146\071\146\060\066\142\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\062\040" + "\043\146\070\145\064\065\143\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\063\040" + "\043\146\066\144\063\062\144\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\064\040" + "\043\146\065\143\062\061\061\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\171\145\154\154\157\167\137\065\040" + "\043\145\065\141\065\060\141\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\061\040" + "\043\146\146\142\145\066\146\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\062\040" + "\043\146\146\141\063\064\070\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\063\040" + "\043\146\146\067\070\060\060\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\064\040" + "\043\145\066\066\061\060\060\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\157\162\141\156\147\145\137\065\040" + "\043\143\066\064\066\060\060\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\162\145\144\137\061\040\043\146\066" + "\066\061\065\061\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\162\145\144\137\062\040\043\145\144\063\063\063" + "\142\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\162\145\144\137\063\040\043\145\060\061\142\062\064\073\012" + "\100\144\145\146\151\156\145\055\143\157\154\157\162\040\162\145" + "\144\137\064\040\043\143\060\061\143\062\070\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\162\145\144\137\065" + "\040\043\141\065\061\144\062\144\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\061" + "\040\043\144\143\070\141\144\144\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\062" + "\040\043\143\060\066\061\143\142\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\063" + "\040\043\071\061\064\061\141\143\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\064" + "\040\043\070\061\063\144\071\143\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\160\165\162\160\154\145\137\065" + "\040\043\066\061\063\065\070\063\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\142\162\157\167\156\137\061\040" + "\043\143\144\141\142\070\146\073\012\100\144\145\146\151\156\145" + "\055\143\157\154\157\162\040\142\162\157\167\156\137\062\040\043" + "\142\065\070\063\065\141\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\142\162\157\167\156\137\063\040\043\071" + "\070\066\141\064\064\073\012\100\144\145\146\151\156\145\055\143" + "\157\154\157\162\040\142\162\157\167\156\137\064\040\043\070\066" + "\065\145\063\143\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\142\162\157\167\156\137\065\040\043\066\063\064" + "\065\062\143\073\012\100\144\145\146\151\156\145\055\143\157\154" + "\157\162\040\154\151\147\150\164\137\061\040\043\146\146\146\146" + "\146\146\073\012\100\144\145\146\151\156\145\055\143\157\154\157" + "\162\040\154\151\147\150\164\137\062\040\043\146\066\146\065\146" + "\064\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\154\151\147\150\164\137\063\040\043\144\145\144\144\144\141" + "\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040" + "\154\151\147\150\164\137\064\040\043\143\060\142\146\142\143\073" + "\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040\154" + "\151\147\150\164\137\065\040\043\071\141\071\071\071\066\073\012" + "\100\144\145\146\151\156\145\055\143\157\154\157\162\040\144\141" + "\162\153\137\061\040\043\067\067\067\066\067\142\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\144\141\162\153" + "\137\062\040\043\065\145\065\143\066\064\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\144\141\162\153\137\063" + "\040\043\063\144\063\070\064\066\073\012\100\144\145\146\151\156" + "\145\055\143\157\154\157\162\040\144\141\162\153\137\064\040\043" + "\062\064\061\146\063\061\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\144\141\162\153\137\065\040\043\060\060" + "\060\060\060\060\073\012\056\142\141\143\153\147\162\157\165\156" + "\144\040\173\040\143\157\154\157\162\072\040\100\167\151\156\144" + "\157\167\137\146\147\137\143\157\154\157\162\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\167\151\156\144\157\167\137\142\147\137\143\157\154\157\162\073" + "\040\175\012\012\144\156\144\040\173\040\143\157\154\157\162\072" + "\040\100\167\151\156\144\157\167\137\146\147\137\143\157\154\157" + "\162\073\040\175\012\012\056\156\157\162\155\141\154\055\151\143" + "\157\156\163\040\173\040\055\147\164\153\055\151\143\157\156\055" + "\163\151\172\145\072\040\061\066\160\170\073\040\175\012\012\056" + "\154\141\162\147\145\055\151\143\157\156\163\040\173\040\055\147" + "\164\153\055\151\143\157\156\055\163\151\172\145\072\040\063\062" + "\160\170\073\040\175\012\012\056\157\163\144\040\160\157\160\157" + "\166\145\162\040\076\040\141\162\162\157\167\054\040\056\157\163" + "\144\040\160\157\160\157\166\145\162\040\076\040\143\157\156\164" + "\145\156\164\163\054\040\160\157\160\157\166\145\162\056\164\157" + "\165\143\150\055\163\145\154\145\143\164\151\157\156\040\076\040" + "\141\162\162\157\167\054\040\160\157\160\157\166\145\162\056\164" + "\157\165\143\150\055\163\145\154\145\143\164\151\157\156\040\076" + "\040\143\157\156\164\145\156\164\163\054\040\160\157\160\157\166" + "\145\162\056\155\141\147\156\151\146\151\145\162\040\076\040\141" + "\162\162\157\167\054\040\160\157\160\157\166\145\162\056\155\141" + "\147\156\151\146\151\145\162\040\076\040\143\157\156\164\145\156" + "\164\163\054\040\164\157\141\163\164\054\040\056\141\160\160\055" + "\156\157\164\151\146\151\143\141\164\151\157\156\054\040\144\151" + "\141\154\157\147\055\150\157\163\164\040\076\040\144\151\141\154" + "\157\147\056\157\163\144\040\163\150\145\145\164\054\040\056\157" + "\163\144\040\173\040\143\157\154\157\162\072\040\162\147\142\141" + "\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040" + "\060\056\071\051\073\040\142\157\162\144\145\162\072\040\156\157" + "\156\145\073\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\067\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\154\151\160\072\040\160\141\144\144\151" + "\156\147\055\142\157\170\073\040\175\012\012\057\052\040\124\145" + "\170\164\040\163\145\154\145\143\164\151\157\156\040\052\057\012" + "\163\145\154\145\143\164\151\157\156\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\100\166\151\145\167\137\146\147\137\143\157\154" + "\157\162\054\060\056\061\051\073\040\143\157\154\157\162\072\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\175\012\012" + "\163\145\154\145\143\164\151\157\156\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\054\060\056\063\051\073\040\175\012\012\072\156\157\164\050" + "\167\151\156\144\157\167\051\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\072\146\157\143\165\163\054\040\072\156\157\164" + "\050\167\151\156\144\157\167\051\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\040\173\040\142\157\162\144\145\162\055\143" + "\157\154\157\162\072\040\100\141\143\143\145\156\164\137\142\147" + "\137\143\157\154\157\162\073\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\060\040\060\040" + "\061\160\170\040\100\141\143\143\145\156\164\137\142\147\137\143" + "\157\154\157\162\073\040\143\141\162\145\164\055\143\157\154\157" + "\162\072\040\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\056\156\141\166\151\147\141\164" + "\151\157\156\055\163\151\144\145\142\141\162\040\072\156\157\164" + "\050\167\151\156\144\157\167\051\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\072\146\157\143\165\163\054\040\056\156\141" + "\166\151\147\141\164\151\157\156\055\163\151\144\145\142\141\162" + "\040\072\156\157\164\050\167\151\156\144\157\167\051\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\054\040\160\154\141\143" + "\145\163\163\151\144\145\142\141\162\040\072\156\157\164\050\167" + "\151\156\144\157\167\051\072\144\162\157\160\050\141\143\164\151" + "\166\145\051\072\146\157\143\165\163\054\040\160\154\141\143\145" + "\163\163\151\144\145\142\141\162\040\072\156\157\164\050\167\151" + "\156\144\157\167\051\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\054\040\163\164\141\143\153\163\167\151\164\143\150\145" + "\162\040\072\156\157\164\050\167\151\156\144\157\167\051\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\072\146\157\143\165" + "\163\054\040\163\164\141\143\153\163\167\151\164\143\150\145\162" + "\040\072\156\157\164\050\167\151\156\144\157\167\051\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\054\040\145\170\160\141" + "\156\144\145\162\055\167\151\144\147\145\164\040\072\156\157\164" + "\050\167\151\156\144\157\167\051\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\072\146\157\143\165\163\054\040\145\170\160" + "\141\156\144\145\162\055\167\151\144\147\145\164\040\072\156\157" + "\164\050\167\151\156\144\157\167\051\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\040\173\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\156\157\156\145\073\040\175\012\012\057\052" + "\040\117\165\164\154\151\156\145\040\146\157\162\040\154\157\167" + "\040\162\145\163\040\151\143\157\156\163\040\052\057\012\056\154" + "\157\167\162\145\163\055\151\143\157\156\040\173\040\055\147\164" + "\153\055\151\143\157\156\055\163\150\141\144\157\167\072\040\060" + "\040\055\061\160\170\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\060\065\051\054\040\061\160\170\040\060" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\061\051\054\040\060\040\061\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\063\051\054\040\055" + "\061\160\170\040\060\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\061\051\073\040\175\012\012\057\052\040" + "\104\162\157\160\040\163\150\141\144\157\167\040\146\157\162\040" + "\154\141\162\147\145\040\151\143\157\156\163\040\052\057\012\056" + "\151\143\157\156\055\144\162\157\160\163\150\141\144\157\167\040" + "\173\040\055\147\164\153\055\151\143\157\156\055\163\150\141\144" + "\157\167\072\040\060\040\061\160\170\040\061\062\160\170\040\162" + "\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056\060" + "\065\051\054\040\060\040\055\061\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\060\065\051\054\040" + "\061\160\170\040\060\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\061\051\054\040\060\040\061\160\170\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\063\051\054\040\055\061\160\170\040\060\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\061\051\073\040\175" + "\012\012\100\153\145\171\146\162\141\155\145\163\040\156\145\145" + "\144\163\137\141\164\164\145\156\164\151\157\156\040\173\040\146" + "\162\157\155\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\162\141\144\151\141\154\055\147" + "\162\141\144\151\145\156\164\050\146\141\162\164\150\145\163\164" + "\055\163\151\144\145\054\040\100\141\143\143\145\156\164\137\143" + "\157\154\157\162\040\060\045\054\040\164\162\141\156\163\160\141" + "\162\145\156\164\040\060\045\051\073\040\175\012\040\040\164\157" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\162\141\144\151\141\154\055\147\162\141\144" + "\151\145\156\164\050\146\141\162\164\150\145\163\164\055\163\151" + "\144\145\054\040\100\141\143\143\145\156\164\137\143\157\154\157" + "\162\040\071\065\045\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\051\073\040\175\040\175\012\012\163\164\141\143\153\163" + "\151\144\145\142\141\162\040\162\157\167\056\156\145\145\144\163" + "\055\141\164\164\145\156\164\151\157\156\040\076\040\154\141\142" + "\145\154\054\040\163\164\141\143\153\163\167\151\164\143\150\145" + "\162\040\076\040\142\165\164\164\157\156\056\156\145\145\144\163" + "\055\141\164\164\145\156\164\151\157\156\040\076\040\154\141\142" + "\145\154\054\040\163\164\141\143\153\163\167\151\164\143\150\145" + "\162\040\076\040\142\165\164\164\157\156\056\156\145\145\144\163" + "\055\141\164\164\145\156\164\151\157\156\040\076\040\151\155\141" + "\147\145\040\173\040\141\156\151\155\141\164\151\157\156\072\040" + "\156\145\145\144\163\137\141\164\164\145\156\164\151\157\156\040" + "\061\065\060\155\163\040\145\141\163\145\055\151\156\073\040\142" + "\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072" + "\040\162\141\144\151\141\154\055\147\162\141\144\151\145\156\164" + "\050\146\141\162\164\150\145\163\164\055\163\151\144\145\054\040" + "\100\141\143\143\145\156\164\137\143\157\154\157\162\040\071\066" + "\045\054\040\164\162\141\156\163\160\141\162\145\156\164\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\163\151\172\145" + "\072\040\066\160\170\040\066\160\170\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\162\145\160\145\141\164\072\040\156\157" + "\055\162\145\160\145\141\164\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\160\157\163\151\164\151\157\156\072\040\162\151" + "\147\150\164\040\063\160\170\073\040\175\012\012\163\164\141\143" + "\153\163\151\144\145\142\141\162\040\162\157\167\056\156\145\145" + "\144\163\055\141\164\164\145\156\164\151\157\156\040\076\040\154" + "\141\142\145\154\072\144\151\162\050\162\164\154\051\054\040\163" + "\164\141\143\153\163\167\151\164\143\150\145\162\040\076\040\142" + "\165\164\164\157\156\056\156\145\145\144\163\055\141\164\164\145" + "\156\164\151\157\156\040\076\040\154\141\142\145\154\072\144\151" + "\162\050\162\164\154\051\054\040\163\164\141\143\153\163\167\151" + "\164\143\150\145\162\040\076\040\142\165\164\164\157\156\056\156" + "\145\145\144\163\055\141\164\164\145\156\164\151\157\156\040\076" + "\040\151\155\141\147\145\072\144\151\162\050\162\164\154\051\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\160\157\163" + "\151\164\151\157\156\072\040\154\145\146\164\040\063\160\170\073" + "\040\175\012\012\141\166\141\164\141\162\040\173\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\071\071\071\071" + "\160\170\073\040\146\157\156\164\055\167\145\151\147\150\164\072" + "\040\142\157\154\144\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\061\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\070\063\142" + "\066\145\143\054\040\043\063\063\067\146\144\143\051\073\040\143" + "\157\154\157\162\072\040\043\143\146\145\061\146\065\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\062\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\043\067\141\144\071\146\061\054\040\043\060\146" + "\071\141\143\070\051\073\040\143\157\154\157\162\072\040\043\143" + "\141\145\141\146\062\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\063\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\070\144\145" + "\066\142\061\054\040\043\062\071\141\145\067\064\051\073\040\143" + "\157\154\157\162\072\040\043\143\145\146\070\144\070\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\064\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\043\142\065\145\071\070\141\054\040\043\066\141" + "\142\070\065\142\051\073\040\143\157\154\157\162\072\040\043\145" + "\066\146\071\144\067\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\065\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\146\070\145" + "\063\065\071\054\040\043\144\062\071\144\060\071\051\073\040\143" + "\157\154\157\162\072\040\043\146\071\146\064\145\061\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\066\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\043\146\146\143\142\066\062\054\040\043\144\066" + "\070\064\060\060\051\073\040\143\157\154\157\162\072\040\043\146" + "\146\145\141\144\061\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\067\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\146\146\141" + "\071\065\141\054\040\043\145\144\065\142\060\060\051\073\040\143" + "\157\154\157\162\072\040\043\146\146\145\065\143\065\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\070\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\043\146\067\070\067\067\063\054\040\043\145\066" + "\062\144\064\062\051\073\040\143\157\154\157\162\072\040\043\146" + "\070\144\062\143\145\073\040\175\012\012\141\166\141\164\141\162" + "\056\143\157\154\157\162\071\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\043\145\071\067" + "\063\141\142\054\040\043\145\063\063\142\066\141\051\073\040\143" + "\157\154\157\162\072\040\043\146\141\143\067\144\145\073\040\175" + "\012\012\141\166\141\164\141\162\056\143\157\154\157\162\061\060" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\043\143\142\067\070\144\064\054\040\043\071" + "\071\064\065\142\065\051\073\040\143\157\154\157\162\072\040\043" + "\145\067\143\062\145\070\073\040\175\012\012\141\166\141\164\141" + "\162\056\143\157\154\157\162\061\061\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\154\151" + "\156\145\141\162\055\147\162\141\144\151\145\156\164\050\043\071" + "\145\071\061\145\070\054\040\043\067\141\065\071\143\141\051\073" + "\040\143\157\154\157\162\072\040\043\144\065\144\062\146\065\073" + "\040\175\012\012\141\166\141\164\141\162\056\143\157\154\157\162" + "\061\062\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\151\155\141\147\145\072\040\154\151\156\145\141\162\055\147\162" + "\141\144\151\145\156\164\050\043\145\063\143\146\071\143\054\040" + "\043\142\060\070\071\065\062\051\073\040\143\157\154\157\162\072" + "\040\043\146\062\145\141\144\145\073\040\175\012\012\141\166\141" + "\164\141\162\056\143\157\154\157\162\061\063\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\043\142\145\071\061\066\144\054\040\043\067\070\065\063\063\066" + "\051\073\040\143\157\154\157\162\072\040\043\145\065\144\066\143" + "\141\073\040\175\012\012\141\166\141\164\141\162\056\143\157\154" + "\157\162\061\064\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\151\155\141\147\145\072\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\043\143\060\142\146\142\143" + "\054\040\043\066\145\066\144\067\061\051\073\040\143\157\154\157" + "\162\072\040\043\144\070\144\067\144\063\073\040\175\012\012\141" + "\166\141\164\141\162\056\143\157\156\164\162\141\163\164\145\144" + "\040\173\040\143\157\154\157\162\072\040\167\150\151\164\145\073" + "\040\175\012\012\141\166\141\164\141\162\056\151\155\141\147\145" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\175\012\012\142\157\164\164\157\155\055\163" + "\150\145\145\164\040\076\040\144\151\155\155\151\156\147\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\062\051\073\040\175\012\012\142\157\164" + "\164\157\155\055\163\150\145\145\164\040\076\040\163\150\145\145" + "\164\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154" + "\145\146\164\055\162\141\144\151\165\163\072\040\061\062\160\170" + "\073\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\061\062\160\170\073" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\060\040\062" + "\160\170\040\070\160\170\040\062\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\060\067\051\054\040" + "\060\040\063\160\170\040\062\060\160\170\040\061\060\160\170\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\060\065\051\054\040\060\040\066\160\170\040\063\062\160\170\040" + "\061\066\160\170\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\060\062\051\054\040\060\040\060\040\060\040" + "\061\160\170\040\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\060\065\051\073\040\175\012\012\142\157\164\164" + "\157\155\055\163\150\145\145\164\040\076\040\163\150\145\145\164" + "\040\076\040\144\162\141\147\055\150\141\156\144\154\145\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\062\065\051\073\040\155\151\156" + "\055\167\151\144\164\150\072\040\066\060\160\170\073\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\064\160\170\073\040\155" + "\141\162\147\151\156\072\040\066\160\170\073\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\071\071\160\170\073" + "\040\175\012\012\142\157\164\164\157\155\055\163\150\145\145\164" + "\040\076\040\163\150\145\145\164\040\076\040\157\165\164\154\151" + "\156\145\040\173\040\142\157\162\144\145\162\055\164\157\160\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\061\062\160" + "\170\073\040\142\157\162\144\145\162\055\164\157\160\055\162\151" + "\147\150\164\055\162\141\144\151\165\163\072\040\061\062\160\170" + "\073\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\061\160\170\040\060\040\162\147\142\141\050\062" + "\065\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056" + "\060\067\051\054\040\151\156\163\145\164\040\055\061\160\170\040" + "\060\040\162\147\142\141\050\062\065\065\054\040\062\065\065\054" + "\040\062\065\065\054\040\060\056\060\067\051\054\040\151\156\163" + "\145\164\040\060\040\061\160\170\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\060" + "\067\051\073\040\175\012\012\142\157\164\164\157\155\055\163\150" + "\145\145\164\040\076\040\163\150\145\145\164\040\076\040\157\165" + "\164\154\151\156\145\056\146\154\165\163\150\055\154\145\146\164" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\055\061\160\170\040\060\040\162\147\142\141" + "\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040" + "\060\056\060\067\051\054\040\151\156\163\145\164\040\060\040\061" + "\160\170\040\162\147\142\141\050\062\065\065\054\040\062\065\065" + "\054\040\062\065\065\054\040\060\056\060\067\051\073\040\175\012" + "\012\142\157\164\164\157\155\055\163\150\145\145\164\040\076\040" + "\163\150\145\145\164\040\076\040\157\165\164\154\151\156\145\056" + "\146\154\165\163\150\055\162\151\147\150\164\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\061\160\170\040\060\040\162\147\142\141\050\062\065\065\054\040" + "\062\065\065\054\040\062\065\065\054\040\060\056\060\067\051\054" + "\040\151\156\163\145\164\040\060\040\061\160\170\040\162\147\142" + "\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054" + "\040\060\056\060\067\051\073\040\175\012\012\142\157\164\164\157" + "\155\055\163\150\145\145\164\040\076\040\163\150\145\145\164\040" + "\076\040\157\165\164\154\151\156\145\056\146\154\165\163\150\055" + "\154\145\146\164\056\146\154\165\163\150\055\162\151\147\150\164" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\060\040\061\160\170\040\162\147\142\141\050" + "\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040\060" + "\056\060\067\051\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142" + "\163\040\076\040\141\162\162\157\167\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\072\144\151\162\050\154\164\162\051\072\154" + "\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163" + "\164\055\143\150\151\154\144\072\144\151\162\050\162\164\154\051" + "\072\146\151\162\163\164\055\143\150\151\154\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051\072" + "\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143" + "\150\151\154\144\054\040\143\157\154\157\162\163\167\141\164\143" + "\150\043\141\144\144\055\143\157\154\157\162\055\142\165\164\164" + "\157\156\040\076\040\157\166\145\162\154\141\171\054\040\142\165" + "\164\164\157\156\040\173\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\062\064\160\170\073\040\155\151\156\055\167\151\144" + "\164\150\072\040\061\066\160\170\073\040\160\141\144\144\151\156" + "\147\072\040\065\160\170\040\061\060\160\170\073\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\066\160\170\073" + "\040\146\157\156\164\055\167\145\151\147\150\164\072\040\142\157" + "\154\144\073\040\175\012\012\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\154\164\162\051\072\154\141\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\072\144\151\162\050\162\164\154\051\072\146" + "\151\162\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\054\040\143\157\154\157\162\163\167\141\164\143\150\043" + "\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156" + "\040\076\040\157\166\145\162\154\141\171\054\040\142\165\164\164" + "\157\156\040\173\040\157\165\164\154\151\156\145\072\040\060\040" + "\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156" + "\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\064\160\170\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165" + "\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\142\141\143\153\147\162\157\165\156\144\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\142\157\170\055\163\150" + "\141\144\157\167\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073" + "\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162" + "\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164" + "\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054\040" + "\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055" + "\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157" + "\166\145\162\154\141\171\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\054\060\056\065\051" + "\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072" + "\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\055\062\160\170\073\040\175\012\012\056" + "\157\163\144\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\056\157\163\144\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\054\040\056\157\163\144\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\162\157\167\056\163\160\151\156\040\056" + "\157\163\144\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\157\163\144\040\143\157\154\157\162\163\167" + "\141\164\143\150\043\141\144\144\055\143\157\154\157\162\055\142" + "\165\164\164\157\156\040\076\040\157\166\145\162\154\141\171\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\056\157\163\144\040\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\040\173\040\157\165\164\154\151\156\145\055\143" + "\157\154\157\162\072\040\162\147\142\141\050\062\065\065\054\040" + "\062\065\065\054\040\062\065\065\054\040\060\056\065\051\073\040" + "\175\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\054\040\056\164\157\157\154\142\141\162\040" + "\160\157\160\157\166\145\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\054\040\150" + "\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056" + "\154\151\156\153\145\144\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\056" + "\154\151\156\153\145\144\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056\154" + "\151\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040" + "\141\162\162\157\167\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\154\164\162\051\072\154\141\163\164\055" + "\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\144\151\162\050\154\164\162\051\072\154\141\163\164" + "\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144" + "\054\040\143\157\154\157\162\163\167\141\164\143\150\043\141\144" + "\144\055\143\157\154\157\162\055\142\165\164\164\157\156\040\076" + "\040\157\166\145\162\154\141\171\054\040\142\165\164\164\157\156" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\051\073\040\175\012" + "\012\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157" + "\166\145\162\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157" + "\166\145\162\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054" + "\040\056\164\157\157\154\142\141\162\040\160\157\160\157\166\145" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\150\157\166\145\162\054\040\150" + "\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\072\150\157\166\145\162\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\160\157\160\157\166\145\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\150\157\166\145" + "\162\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\150\157\166\145\162\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\150\157\166\145" + "\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\056\154" + "\151\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\156\157\164\145\142\157\157\153\040\076\040\150\145" + "\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141\162" + "\162\157\167\072\150\157\166\145\162\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\150\157\166\145\162\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\150\157\166\145" + "\162\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\154\164\162\051\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\150\157\166\145\162\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\150" + "\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\154\164" + "\162\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164\154" + "\051\072\146\151\162\163\164\055\143\150\151\154\144\054\040\143" + "\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055\143" + "\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157\166" + "\145\162\154\141\171\072\150\157\166\145\162\054\040\142\165\164" + "\164\157\156\072\150\157\166\145\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\065\051\073\040\175\012\012\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\160\157\160\157\166\145\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\160\157\160\157\166\145\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\054\040\056\164\157\157\154\142\141\162\040" + "\160\157\160\157\166\145\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\150\145\141\144\145\162\142\141\162\040\160\157\160" + "\157\166\145\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162\141" + "\151\163\145\144\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\056" + "\154\151\156\153\145\144\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\141\162\162\157\167\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056" + "\154\151\156\153\145\144\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040\056" + "\164\157\157\154\142\141\162\040\160\157\160\157\166\145\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\054\040\150\145" + "\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145" + "\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\154\164\162\051\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162" + "\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\144\151\162\050\154\164\162\051\072\154\141\163\164\055" + "\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\143\157\154\157\162\163\167\141\164\143\150" + "\043\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157" + "\156\040\076\040\157\166\145\162\154\141\171\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054" + "\040\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157" + "\167\072\141\143\164\151\166\145\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151" + "\154\144\072\144\151\162\050\154\164\162\051\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\054\040\143\157\154\157\162\163\167\141\164\143\150\043" + "\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156" + "\040\076\040\157\166\145\162\154\141\171\072\141\143\164\151\166" + "\145\054\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\063\051\073\040\175\012\012\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\056\164\157\157\154\142\141\162\040\160\157\160\157\166\145" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166" + "\145\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\160\157\160\157\166\145\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145" + "\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145" + "\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141" + "\151\163\145\144\040\076\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141" + "\151\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\056\154" + "\151\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167\072" + "\143\150\145\143\153\145\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\154\164\162\051\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151" + "\154\144\072\144\151\162\050\162\164\154\051\072\146\151\162\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\144\151\162\050\154\164\162\051\072\154\141\163\164\055" + "\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\144\151\162\050\162\164\154\051\072\146\151\162\163" + "\164\055\143\150\151\154\144\054\040\143\157\154\157\162\163\167" + "\141\164\143\150\043\141\144\144\055\143\157\154\157\162\055\142" + "\165\164\164\157\156\040\076\040\157\166\145\162\154\141\171\072" + "\143\150\145\143\153\145\144\054\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\063\051\073\040\175\012\012\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\160\157\160\157\166\145\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166" + "\145\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\054\040\056\164\157\157\154\142\141\162" + "\040\160\157\160\157\166\145\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\054\040\150\145" + "\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\160\157\160\157\166\145\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\160\157\160\157\166\145\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050\154" + "\164\162\051\072\154\141\163\164\055\143\150\151\154\144\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164" + "\055\143\150\151\154\144\054\040\143\157\154\157\162\163\167\141" + "\164\143\150\043\141\144\144\055\143\157\154\157\162\055\142\165" + "\164\164\157\156\040\076\040\157\166\145\162\154\141\171\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\054\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\063\065\051\073" + "\040\175\012\012\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160" + "\157\160\157\166\145\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\056\164\157\157\154\142\141\162\040\160\157\160\157\166\145\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\054\040\150\145\141\144\145\162\142\141\162\040\160\157" + "\160\157\166\145\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\160\157\160\157\166\145\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\160\157\160\157\166\145\162\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\160\157\160\157\166\145\162\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145" + "\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\162" + "\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056\154" + "\151\156\153\145\144\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\056\154\151" + "\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\056\154\151\156\153\145" + "\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\154\151\156\153\145\144\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156\153" + "\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\056\154" + "\151\156\153\145\144\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\160\157\160\157\166\145\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166\145" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\141\143\164\151\166\145\054\040\056\164\157\157\154\142\141\162" + "\040\160\157\160\157\166\145\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040\150" + "\145\141\144\145\162\142\141\162\040\160\157\160\157\166\145\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\160\157\160\157\166\145\162\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157" + "\160\157\166\145\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\160\157\160\157\166\145\162\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\160\157\160\157\166\145\162\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\160" + "\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157\166" + "\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\160\157\160\157\166\145\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\160\157\160\157\166\145\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\160\157\160" + "\157\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\160\157\160\157" + "\166\145\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040\076" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\162\141\151\163\145\144\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\162\141\151\163\145\144\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\162\141\151\163\145\144" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151\163" + "\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\162\141\151" + "\163\145\144\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\154\151\156\153\145\144\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\154\151\156" + "\153\145\144\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\056\154\151\156\153\145\144\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\056\154\151\156\153\145\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162" + "\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\054\040\143\157\154\157\162\163\167\141\164\143\150\043" + "\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156" + "\040\076\040\157\166\145\162\154\141\171\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\054\040\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163" + "\040\076\040\141\162\162\157\167\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162" + "\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\054\040\143\157\154\157\162" + "\163\167\141\164\143\150\043\141\144\144\055\143\157\154\157\162" + "\055\142\165\164\164\157\156\040\076\040\157\166\145\162\154\141" + "\171\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\054\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\054\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\064\051\073\040\175\012\012\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\072\144\151\163" + "\141\142\154\145\144\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\144\151\163\141\142" + "\154\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\154\164\162\051\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\144\151\163\141\142" + "\154\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\144\151\163\141\142\154\145" + "\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\144\151\163\141\142\154\145\144\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\144\151\163\141\142\154\145" + "\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\162\164\154\051\072" + "\146\151\162\163\164\055\143\150\151\154\144\054\040\143\157\154" + "\157\162\163\167\141\164\143\150\043\141\144\144\055\143\157\154" + "\157\162\055\142\165\164\164\157\156\040\076\040\157\166\145\162" + "\154\141\171\072\144\151\163\141\142\154\145\144\054\040\142\165" + "\164\164\157\156\072\144\151\163\141\142\154\145\144\040\173\040" + "\146\151\154\164\145\162\072\040\157\160\141\143\151\164\171\050" + "\060\056\065\051\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142" + "\163\040\076\040\141\162\162\157\167\072\144\151\163\141\142\154" + "\145\144\040\154\141\142\145\154\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\144\151\163\141\142\154\145\144\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\040" + "\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\154\164\162\051\040\154\141\142\145\154\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\144\151\163\141\142\154" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151" + "\154\144\072\144\151\162\050\162\164\154\051\072\146\151\162\163" + "\164\055\143\150\151\154\144\040\154\141\142\145\154\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\154\141\142\145" + "\154\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150" + "\151\154\144\040\154\141\142\145\154\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\144\151\163\141\142\154" + "\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\144\151\162\050\162\164\154\051" + "\072\146\151\162\163\164\055\143\150\151\154\144\040\154\141\142" + "\145\154\054\040\143\157\154\157\162\163\167\141\164\143\150\043" + "\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156" + "\040\076\040\157\166\145\162\154\141\171\072\144\151\163\141\142" + "\154\145\144\040\154\141\142\145\154\054\040\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\040\154\141\142\145\154" + "\040\173\040\146\151\154\164\145\162\072\040\156\157\156\145\073" + "\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\154\164\162\051\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162" + "\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\054\040\143\157\154\157\162\163\167\141\164\143\150\043\141" + "\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156\040" + "\076\040\157\166\145\162\154\141\171\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\054\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\040\173\040\155\151" + "\156\055\167\151\144\164\150\072\040\062\064\160\170\073\040\160" + "\141\144\144\151\156\147\055\154\145\146\164\072\040\065\160\170" + "\073\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072" + "\040\065\160\170\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142" + "\163\040\076\040\141\162\162\157\167\056\164\145\170\164\055\142" + "\165\164\164\157\156\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164" + "\162\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164\154" + "\051\072\146\151\162\163\164\055\143\150\151\154\144\054\040\143" + "\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055\143" + "\157\154\157\162\055\142\165\164\164\157\156\040\076\040\157\166" + "\145\162\154\141\171\056\164\145\170\164\055\142\165\164\164\157" + "\156\054\040\142\165\164\164\157\156\056\164\145\170\164\055\142" + "\165\164\164\157\156\040\173\040\160\141\144\144\151\156\147\055" + "\154\145\146\164\072\040\061\067\160\170\073\040\160\141\144\144" + "\151\156\147\055\162\151\147\150\164\072\040\061\067\160\170\073" + "\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170\164" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163" + "\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\154\164\162\051\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\143\157\154\157\162\163\167\141\164" + "\143\150\043\141\144\144\055\143\157\154\157\162\055\142\165\164" + "\164\157\156\040\076\040\157\166\145\162\154\141\171\056\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\054\040\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163" + "\040\076\040\141\162\162\157\167\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\154" + "\164\162\051\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051\072" + "\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164" + "\055\143\150\151\154\144\054\040\143\157\154\157\162\163\167\141" + "\164\143\150\043\141\144\144\055\143\157\154\157\162\055\142\165" + "\164\164\157\156\040\076\040\157\166\145\162\154\141\171\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\054\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\054\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\040\173\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\071\160\170\073" + "\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040" + "\071\160\170\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163" + "\040\076\040\141\162\162\157\167\056\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\040\076\040\142\157\170\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\040\076\040\142\157\170\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\154\164\162\051\040\076\040\142\157\170" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\164" + "\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162" + "\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144\040" + "\076\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\157\170\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154" + "\144\040\076\040\142\157\170\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164\154" + "\051\072\146\151\162\163\164\055\143\150\151\154\144\040\076\040" + "\142\157\170\054\040\143\157\154\157\162\163\167\141\164\143\150" + "\043\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157" + "\156\040\076\040\157\166\145\162\154\141\171\056\164\145\170\164" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\040\076\040\142\157\170\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\056\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\040\076\040\142\157\170\040\076\040\142\157" + "\170\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\040\076\040\142\157" + "\170\040\076\040\142\157\170\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\154\164\162\051\040\076\040\142\157\170" + "\040\076\040\142\157\170\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\040\076\040\142\157\170\040\076\040\142\157" + "\170\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\157\170\040\076\040\142\157\170\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150" + "\151\154\144\040\076\040\142\157\170\040\076\040\142\157\170\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\040\076\040\142\157\170\040\076\040\142\157" + "\170\054\040\143\157\154\157\162\163\167\141\164\143\150\043\141" + "\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156\040" + "\076\040\157\166\145\162\154\141\171\056\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\040\076\040\142\157\170\040\076\040\142\157\170\054\040" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\040\076\040\142\157\170\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144" + "\151\162\050\154\164\162\051\040\076\040\142\157\170\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\040\076\040\142\157\170\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162" + "\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144" + "\040\076\040\142\157\170\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\040\076\040\142\157\170\054\040\143\157\154\157\162\163" + "\167\141\164\143\150\043\141\144\144\055\143\157\154\157\162\055" + "\142\165\164\164\157\156\040\076\040\157\166\145\162\154\141\171" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\040\076\040\142\157\170\054\040\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\040\076\040\142" + "\157\170\040\076\040\142\157\170\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\040\076" + "\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\072\144\151\162\050\154\164\162\051\040\076\040" + "\142\157\170\040\076\040\142\157\170\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162\164" + "\154\051\072\146\151\162\163\164\055\143\150\151\154\144\040\076" + "\040\142\157\170\040\076\040\142\157\170\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\157\170\040\076\040\142\157\170\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\040\076" + "\040\142\157\170\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144" + "\040\076\040\142\157\170\040\076\040\142\157\170\054\040\143\157" + "\154\157\162\163\167\141\164\143\150\043\141\144\144\055\143\157" + "\154\157\162\055\142\165\164\164\157\156\040\076\040\157\166\145" + "\162\154\141\171\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\040\076\040\142\157\170\040\076\040\142" + "\157\170\054\040\142\165\164\164\157\156\056\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\040\076\040\142\157\170\054\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\040\076\040\142\157\170" + "\040\076\040\142\157\170\054\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\040\076\040\142\157\170\054\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\040\076\040\142\157\170\040\076\040\142\157\170\040\173\040\142" + "\157\162\144\145\162\055\163\160\141\143\151\156\147\072\040\064" + "\160\170\073\040\175\012\012\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\056\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\040\076\040\142\157\170\040\076\040\154\141\142\145\154\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\040\076" + "\040\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\154\164\162\051\040\076\040\142\157\170\040" + "\076\040\154\141\142\145\154\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164" + "\055\143\150\151\154\144\040\076\040\142\157\170\040\076\040\154" + "\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\157\170\040\076\040\154\141" + "\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\040\076" + "\040\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157" + "\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\144\151\162\050\162\164\154\051" + "\072\146\151\162\163\164\055\143\150\151\154\144\040\076\040\142" + "\157\170\040\076\040\154\141\142\145\154\054\040\143\157\154\157" + "\162\163\167\141\164\143\150\043\141\144\144\055\143\157\154\157" + "\162\055\142\165\164\164\157\156\040\076\040\157\166\145\162\154" + "\141\171\056\164\145\170\164\055\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\040\076\040\142\157" + "\170\040\076\040\154\141\142\145\154\054\040\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164" + "\141\142\163\040\076\040\141\162\162\157\167\056\164\145\170\164" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\040\076\040\142\157\170\040\076\040\142\157\170" + "\040\076\040\154\141\142\145\154\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151" + "\154\144\040\076\040\142\157\170\040\076\040\142\157\170\040\076" + "\040\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\154\164\162\051\040\076\040\142\157\170\040" + "\076\040\142\157\170\040\076\040\154\141\142\145\154\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170\164" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163" + "\164\055\143\150\151\154\144\072\144\151\162\050\162\164\154\051" + "\072\146\151\162\163\164\055\143\150\151\154\144\040\076\040\142" + "\157\170\040\076\040\142\157\170\040\076\040\154\141\142\145\154" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\164" + "\145\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040" + "\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051\072" + "\154\141\163\164\055\143\150\151\154\144\040\076\040\142\157\170" + "\040\076\040\142\157\170\040\076\040\154\141\142\145\154\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\164\145\170" + "\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143" + "\150\151\154\144\040\076\040\142\157\170\040\076\040\142\157\170" + "\040\076\040\154\141\142\145\154\054\040\143\157\154\157\162\163" + "\167\141\164\143\150\043\141\144\144\055\143\157\154\157\162\055" + "\142\165\164\164\157\156\040\076\040\157\166\145\162\154\141\171" + "\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\040\076\040\142\157\170\040" + "\076\040\142\157\170\040\076\040\154\141\142\145\154\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\040\076\040\142\157\170\040\076\040\154\141\142\145\154\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\040" + "\076\040\142\157\170\040\076\040\154\141\142\145\154\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\154\164\162\051\040\076\040\142\157\170\040\076\040\154" + "\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143" + "\150\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\040\076\040\142\157\170\040" + "\076\040\154\141\142\145\154\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\157\170\040\076\040\154\141\142\145\154\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141\163" + "\164\055\143\150\151\154\144\040\076\040\142\157\170\040\076\040" + "\154\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162" + "\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\040\076\040\142\157\170\040\076\040\154\141\142\145\154\054" + "\040\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144" + "\055\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040" + "\157\166\145\162\154\141\171\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\040\076\040\142\157\170\040" + "\076\040\154\141\142\145\154\054\040\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142" + "\163\040\076\040\141\162\162\157\167\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\040\076\040\142\157" + "\170\040\076\040\142\157\170\040\076\040\154\141\142\145\154\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\040" + "\076\040\142\157\170\040\076\040\142\157\170\040\076\040\154\141" + "\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\154\164\162\051\040\076\040\142" + "\157\170\040\076\040\142\157\170\040\076\040\154\141\142\145\154" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\040\076\040\142\157\170\040\076\040\142\157" + "\170\040\076\040\154\141\142\145\154\054\040\162\157\167\056\163" + "\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040\154" + "\141\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144\040" + "\076\040\142\157\170\040\076\040\142\157\170\040\076\040\154\141" + "\142\145\154\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162" + "\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144\040" + "\076\040\142\157\170\040\076\040\142\157\170\040\076\040\154\141" + "\142\145\154\054\040\143\157\154\157\162\163\167\141\164\143\150" + "\043\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157" + "\156\040\076\040\157\166\145\162\154\141\171\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\040\076\040" + "\142\157\170\040\076\040\142\157\170\040\076\040\154\141\142\145" + "\154\054\040\142\165\164\164\157\156\056\164\145\170\164\055\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\040\076\040\142\157\170\040\076\040\154\141\142\145\154" + "\054\040\142\165\164\164\157\156\056\164\145\170\164\055\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040" + "\154\141\142\145\154\054\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\040" + "\076\040\142\157\170\040\076\040\154\141\142\145\154\054\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\040\076\040\142\157\170\040\076\040" + "\142\157\170\040\076\040\154\141\142\145\154\040\173\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\062\160\170\073" + "\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040" + "\062\160\170\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163" + "\040\076\040\141\162\162\157\167\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050" + "\154\164\162\051\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143" + "\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162" + "\051\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\143\157\154\157\162\163\167\141\164\143\150" + "\043\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157" + "\156\040\076\040\157\166\145\162\154\141\171\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\054\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\040\173\040" + "\160\141\144\144\151\156\147\055\154\145\146\164\072\040\071\160" + "\170\073\040\160\141\144\144\151\156\147\055\162\151\147\150\164" + "\072\040\071\160\170\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\040\076\040\142\157\170\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164" + "\162\051\040\076\040\142\157\170\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\154\141\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\162\164\154\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\076\040\142\157\170\054\040" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\157\170\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162" + "\051\072\154\141\163\164\055\143\150\151\154\144\040\076\040\142" + "\157\170\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\144\151\162\050\162\164\154\051\072\146\151" + "\162\163\164\055\143\150\151\154\144\040\076\040\142\157\170\054" + "\040\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144" + "\055\143\157\154\157\162\055\142\165\164\164\157\156\040\076\040" + "\157\166\145\162\154\141\171\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\040\076\040\142\157\170\054\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\040" + "\076\040\142\157\170\040\173\040\142\157\162\144\145\162\055\163" + "\160\141\143\151\156\147\072\040\064\160\170\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\056\164\145" + "\170\164\055\142\165\164\164\157\156\040\076\040\142\157\170\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\056\164\145\170\164\055" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\040\076\040\142\157\170\054\040\162\157" + "\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\157\170" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\056\164\145\170\164" + "\055\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144" + "\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150\151" + "\154\144\040\076\040\142\157\170\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167" + "\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\162\164\154\051\072" + "\146\151\162\163\164\055\143\150\151\154\144\040\076\040\142\157" + "\170\054\040\143\157\154\157\162\163\167\141\164\143\150\043\141" + "\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156\040" + "\076\040\157\166\145\162\154\141\171\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164" + "\157\156\040\076\040\142\157\170\054\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\056\164\145" + "\170\164\055\142\165\164\164\157\156\040\076\040\142\157\170\040" + "\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\064\160\170\073\040\175\012\012\144\162\157\160\144\157" + "\167\156\072\144\162\157\160\050\141\143\164\151\166\145\051\040" + "\142\165\164\164\157\156\056\143\157\155\142\157\054\040\143\157" + "\155\142\157\142\157\170\072\144\162\157\160\050\141\143\164\151" + "\166\145\051\040\142\165\164\164\157\156\056\143\157\155\142\157" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\056\143\154" + "\157\163\145\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\144\162\157\160\050\141\143\164\151\166\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\144\162\157\160\050\141\143\164\151" + "\166\145\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\144\162\157\160\050\141\143\164\151\166\145\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\144\162\157\160\050\141\143\164\151\166\145\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\144\162\157\160\050" + "\141\143\164\151\166\145\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\144\162\157\160\050\141\143\164\151\166\145\051\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\144\162\157\160\050" + "\141\143\164\151\166\145\051\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\167\151" + "\156\144\157\167\056\144\151\141\154\157\147\056\155\145\163\163" + "\141\147\145\056\143\163\144\040\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\141\162\145\141\040\076\040\142\165" + "\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145" + "\051\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\142\157\170\056\143\151\162\143\165\154\141\162\055\142\165\164" + "\164\157\156\163\040\142\165\164\164\157\156\056\143\151\162\143" + "\165\154\141\162\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\155\157\144\145\154\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\151\156\154\151\156\145\055\142\165" + "\164\164\157\156\163\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\155\157\144\145\154\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\054\040\146\151" + "\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142" + "\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\072\144\162\157" + "\160\050\141\143\164\151\166\145\051\054\040\146\151\154\145\143" + "\150\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142" + "\157\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170" + "\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\054\040\146\151" + "\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142" + "\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040" + "\142\157\170\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\054\040\142\165\164\164\157\156\056\163" + "\151\144\145\142\141\162\055\142\165\164\164\157\156\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\054\040\142\165\164\164" + "\157\156\056\145\155\157\152\151\055\163\145\143\164\151\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\151\156\146\157\142\141\162\040\056\143" + "\154\157\163\145\072\144\162\157\160\050\141\143\164\151\166\145" + "\051\054\040\143\141\154\145\156\144\141\162\040\076\040\150\145" + "\141\144\145\162\040\076\040\142\165\164\164\157\156\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\144\162\157\160\050" + "\141\143\164\151\166\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\146\154\141\164\040\076\040\142\165\164" + "\164\157\156\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154" + "\141\164\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\054\040\155\145\156\165\142\165\164\164\157" + "\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\054\040\142\165" + "\164\164\157\156\056\146\154\141\164\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\163\144\040\076\040\142\165\164\164\157\156\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\054\040\142\165" + "\164\164\157\156\056\157\163\144\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\144\162\157\160\050\141\143\164\151\166\145\051\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\154" + "\164\162\051\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\144\162\157\160\050\141\143\164\151\166\145\051\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\144\162\157\160\050\141\143\164\151\166\145\051" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051" + "\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151" + "\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150\151" + "\154\144\054\040\143\157\154\157\162\163\167\141\164\143\150\043" + "\141\144\144\055\143\157\154\157\162\055\142\165\164\164\157\156" + "\040\076\040\157\166\145\162\154\141\171\072\144\162\157\160\050" + "\141\143\164\151\166\145\051\054\040\142\165\164\164\157\156\072" + "\144\162\157\160\050\141\143\164\151\166\145\051\040\173\040\143" + "\157\154\157\162\072\040\100\141\143\143\145\156\164\137\142\147" + "\137\143\157\154\157\162\073\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\060\040\060\040" + "\062\160\170\040\100\141\143\143\145\156\164\137\142\147\137\143" + "\157\154\157\162\073\040\175\012\012\155\145\156\165\142\165\164" + "\164\157\156\056\157\163\144\040\076\040\142\165\164\164\157\156" + "\054\040\142\165\164\164\157\156\056\157\163\144\040\173\040\155" + "\151\156\055\167\151\144\164\150\072\040\063\062\160\170\073\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\063\062\160\170" + "\073\040\143\157\154\157\162\072\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\071" + "\051\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\066\065\051\073\040\175\012\012\155\145\156" + "\165\142\165\164\164\157\156\056\157\163\144\040\076\040\142\165" + "\164\164\157\156\054\040\142\165\164\164\157\156\056\157\163\144" + "\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163\157" + "\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\065\160\170\073\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154" + "\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\142\141\143\153\147\162\157\165\156\144\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\142\157\170\055\163\150\141\144" + "\157\167\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175" + "\012\012\155\145\156\165\142\165\164\164\157\156\056\157\163\144" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\142" + "\165\164\164\157\156\056\157\163\144\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\054\060\056\065\051\073\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\061\160\170" + "\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156\056" + "\157\163\144\040\076\040\142\165\164\164\157\156\072\150\157\166" + "\145\162\054\040\142\165\164\164\157\156\056\157\163\144\072\150" + "\157\166\145\162\040\173\040\143\157\154\157\162\072\040\167\150" + "\151\164\145\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\155\151\170" + "\050\142\154\141\143\153\054\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\065\051\054\060\056\066\065\051\073" + "\040\175\012\012\155\145\156\165\142\165\164\164\157\156\056\157" + "\163\144\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\163\144\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\142\165\164\164\157\156\056\157\163\144\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054" + "\040\142\165\164\164\157\156\056\157\163\144\072\141\143\164\151" + "\166\145\040\173\040\143\157\154\157\162\072\040\167\150\151\164" + "\145\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\155\151\170\050\142" + "\154\141\143\153\054\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\062\065\051\054\060\056\066\065\051\073\040\175" + "\012\012\155\145\156\165\142\165\164\164\157\156\056\157\163\144" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\142\165\164\164\157\156\056\157\163\144\072\143\150" + "\145\143\153\145\144\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\155\151\170\050\142\154\141\143\153\054\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\062\051\054\060\056\066\065" + "\051\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156" + "\056\157\163\144\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\054\040\142\165\164" + "\164\157\156\056\157\163\144\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\155\151\170\050\142\154\141\143\153\054\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\062\065\051\054\060\056\066" + "\065\051\073\040\175\012\012\155\145\156\165\142\165\164\164\157" + "\156\056\157\163\144\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\163\144\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\054\040\142\165\164\164\157\156\056\157\163\144\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\054\040\142\165\164\164" + "\157\156\056\157\163\144\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\155\151\170\050\142\154\141\143\153\054\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\063\065\051\054\060\056\066" + "\065\051\073\040\175\012\012\155\145\156\165\142\165\164\164\157" + "\156\056\157\163\144\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\056\157\163\144\040\142\165\164\164\157\156\056" + "\157\163\144\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156" + "\145\055\143\157\154\157\162\072\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\065" + "\051\073\040\175\012\012\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\054\040\163\160\154\151\164" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\054\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\054\040" + "\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\040\076\040\142\165\164\164\157\156\054\040\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\054\040\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\054\040" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\156\157\156\145" + "\073\040\175\012\012\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\054\040\163\160\154\151\164" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\054\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\054\040\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\054\040\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\054\040\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\173\040\157" + "\165\164\154\151\156\145\072\040\060\040\163\157\154\151\144\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\065\160\170" + "\073\040\164\162\141\156\163\151\164\151\157\156\072\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\167\151\144\164\150\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\142\141\143" + "\153\147\162\157\165\156\144\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\142\157\170\055\163\150\141\144\157\167\040\062" + "\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145" + "\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056" + "\064\065\054\040\060\056\071\064\051\073\040\175\012\012\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\157\160" + "\141\161\165\145\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143" + "\143\145\156\164\137\143\157\154\157\162\054\060\056\065\051\073" + "\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072\040" + "\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\072\040\061\160\170\073\040\175\012\012\056\157\163" + "\144\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\157\163\144\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\157\163\144\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\056\157\163\144\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\150\145\141\144\145\162\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\056\157" + "\163\144\040\155\145\156\165\142\165\164\164\157\156\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\157\163\144\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\157\163" + "\144\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\157\163\144\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\157\163\144\040\155\145\156" + "\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\056\157\163\144" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\157\163\144\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\056\157\163\144\040\155\145\156\165\142" + "\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\157\163\144\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\157\163\144\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\157\160" + "\141\161\165\145\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\157\163\144\040\155\145\156" + "\165\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\056\157\163\144\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\157\163\144\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\056\157\163\144" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\157\163\144\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\056\157\163\144\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\056\157\163\144\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056" + "\157\163\144\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\056\157\163\144\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\056\157\163\144\040\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\056\157\163" + "\144\040\142\165\164\164\157\156\056\157\160\141\161\165\145\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\040\173\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\072\040\162\147\142\141\050\062\065\065\054\040\062" + "\065\065\054\040\062\065\065\054\040\060\056\065\051\073\040\175" + "\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145\040" + "\076\040\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\157\160" + "\141\161\165\145\040\076\040\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164" + "\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\150\157\166\145\162\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\150\157\166\145\162\054\040\163\160\154\151\164" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\054\040\155\145\156\165\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\150\157\166" + "\145\162\054\040\155\145\156\165\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\072\150\157" + "\166\145\162\054\040\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\072\150" + "\157\166\145\162\054\040\142\165\164\164\157\156\056\157\160\141" + "\161\165\145\072\150\157\166\145\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155" + "\141\147\145\050\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\051\051\073\040\175\012" + "\012\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141" + "\161\165\145\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\054\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\054\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\054\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\054\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\054\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\056\157\160\141\161\165\145\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\054\040\155\145\156\165\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040" + "\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\054\040\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\072\141\143\164\151\166" + "\145\054\040\142\165\164\164\157\156\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\072\141\143\164" + "\151\166\145\054\040\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\072\141\143\164\151\166\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155" + "\141\147\145\050\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\062\051\051\073\040\175\012\012\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\157\160\141" + "\161\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\163\160\154\151\164\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\054\040\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\072\143\150\145\143\153\145\144\054\040\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\072\143\150\145\143\153\145\144\054\040\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\072\143\150\145\143" + "\153\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\151\155\141\147\145\050\162\147" + "\142\141\050\060\054\040\060\054\040\060\054\040\060\056\061\065" + "\051\051\073\040\175\012\012\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\054\040\155\145\156\165\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\054\040\155\145\156\165\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\054\040\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\054\040\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\054\040\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147" + "\145\072\040\151\155\141\147\145\050\162\147\142\141\050\060\054" + "\040\060\054\040\060\054\040\060\056\060\065\051\051\073\040\175" + "\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\054\040\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\054\040\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\157\160\141\161\165\145\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\054\040\163\160\154\151\164\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\054\040\163\160\154\151\164" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\157\160\141\161\165\145\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\155\145\156\165\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\054\040\155\145\156\165\142\165" + "\164\164\157\156\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\054\040\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151" + "\166\145\054\040\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\054\040\142\165" + "\164\164\157\156\056\157\160\141\161\165\145\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151" + "\155\141\147\145\050\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\063\051\051\073\040\175\012\012\142\165\164" + "\164\157\156\056\157\160\141\161\165\145\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\155" + "\151\170\050\100\167\151\156\144\157\167\137\142\147\137\143\157" + "\154\157\162\054\100\167\151\156\144\157\167\137\146\147\137\143" + "\157\154\157\162\054\060\056\061\065\051\073\040\143\157\154\157" + "\162\072\040\100\167\151\156\144\157\167\137\146\147\137\143\157" + "\154\157\162\073\040\175\012\012\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\173\040\143\157\154\157\162\072\040\100\144\145\163\164" + "\162\165\143\164\151\166\145\137\146\147\137\143\157\154\157\162" + "\073\040\175\012\012\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\054\040" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\072\143\150\145\143\153\145" + "\144\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\100\144\145\163\164\162\165\143\164\151" + "\166\145\137\142\147\137\143\157\154\157\162\073\040\175\012\012" + "\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\040\173\040\143\157\154\157\162\072" + "\040\100\141\143\143\145\156\164\137\146\147\137\143\157\154\157" + "\162\073\040\175\012\012\142\165\164\164\157\156\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\054\040\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\072\143\150\145\143\153\145\144\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\143\154\157\163\145\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\054\040\056\164\157\157\154\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\054\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076" + "\040\164\141\142\163\040\076\040\141\162\162\157\167\054\040\167" + "\151\156\144\157\167\056\144\151\141\154\157\147\056\155\145\163" + "\163\141\147\145\056\143\163\144\040\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\141\162\145\141\040\076\040\142" + "\165\164\164\157\156\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162" + "\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056" + "\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\054\040\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\142\157\170\056\151\156" + "\154\151\156\145\055\142\165\164\164\157\156\163\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\155\157\144\145\154\054\040\146\151\154\145\143\150\157\157" + "\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\142\165\164\164\157\156\054\040\146\151\154\145\143\150\157\157" + "\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\054\040\146\151" + "\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142" + "\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040" + "\142\157\170\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\054\040\142\165\164\164\157" + "\156\056\163\151\144\145\142\141\162\055\142\165\164\164\157\156" + "\054\040\142\165\164\164\157\156\056\145\155\157\152\151\055\163" + "\145\143\164\151\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\151" + "\156\146\157\142\141\162\040\056\143\154\157\163\145\054\040\143" + "\141\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162" + "\040\076\040\142\165\164\164\157\156\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\054" + "\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\054\040\056\164\157\157\154\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154\141" + "\164\040\076\040\142\165\164\164\157\156\054\040\163\160\154\151" + "\164\142\165\164\164\157\156\056\146\154\141\164\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\054\040\155\145\156\165\142\165\164\164\157\156\056\146" + "\154\141\164\040\076\040\142\165\164\164\157\156\054\040\142\165" + "\164\164\157\156\056\146\154\141\164\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\175\012\012\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\143\154\157\163\145\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\054\040" + "\150\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167\054" + "\040\167\151\156\144\157\167\056\144\151\141\154\157\147\056\155" + "\145\163\163\141\147\145\056\143\163\144\040\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\141\162\145\141\040\076" + "\040\142\165\164\164\157\156\054\040\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\142\157\170\056\143\151\162\143\165\154" + "\141\162\055\142\165\164\164\157\156\163\040\142\165\164\164\157" + "\156\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\155\157\144\145\154\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170\056" + "\151\156\154\151\156\145\055\142\165\164\164\157\156\163\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\155\157\144\145\154\054\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\076\040\142\165\164\164\157\156\054\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\076\040\142\157\170\040\076\040\142\165\164\164\157\156\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164" + "\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\054\040\142\165\164" + "\164\157\156\056\163\151\144\145\142\141\162\055\142\165\164\164" + "\157\156\054\040\142\165\164\164\157\156\056\145\155\157\152\151" + "\055\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\151\156\146\157\142\141\162\040\056\143\154\157\163\145\054" + "\040\143\141\154\145\156\144\141\162\040\076\040\150\145\141\144" + "\145\162\040\076\040\142\165\164\164\157\156\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\054\040\056\164\157\157\154\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\054\040\056\164\157\157\154\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146" + "\154\141\164\040\076\040\142\165\164\164\157\156\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\146\154\141\164\040\076\040\142\165\164\164\157\156\054\040" + "\142\165\164\164\157\156\056\146\154\141\164\040\173\040\157\165" + "\164\154\151\156\145\072\040\060\040\163\157\154\151\144\040\164" + "\162\141\156\163\160\141\162\145\156\164\073\040\157\165\164\154" + "\151\156\145\055\157\146\146\163\145\164\072\040\064\160\170\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\157\165\164" + "\154\151\156\145\055\143\157\154\157\162\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\142\141\143\153" + "\147\162\157\165\156\144\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\142\157\170\055\163\150\141\144\157\167\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\143\154\157\163\145\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\150\145\141\144\145\162\142\141\162\040\155\145\156" + "\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\141\162\162" + "\157\167\055\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\165\160\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144" + "\157\167\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040" + "\076\040\164\141\142\163\040\076\040\141\162\162\157\167\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\167\151\156\144\157\167\056\144\151\141\154\157" + "\147\056\155\145\163\163\141\147\145\056\143\163\144\040\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\141\162\145" + "\141\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\160\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170" + "\056\143\151\162\143\165\154\141\162\055\142\165\164\164\157\156" + "\163\040\142\165\164\164\157\156\056\143\151\162\143\165\154\141" + "\162\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155" + "\157\144\145\154\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\142\157\170\056\151\156\154\151\156" + "\145\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155\157" + "\144\145\154\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\146\151\154\145\143\150\157" + "\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170" + "\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\146\151\154" + "\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142\141" + "\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040\142" + "\157\170\040\076\040\142\157\170\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\146\151\154\145\143\150\157\157\163" + "\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040\076" + "\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\142\165\164\164\157\156\056\163" + "\151\144\145\142\141\162\055\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\142\165\164\164\157\156\056\145\155\157\152\151\055" + "\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\151\156\146\157\142\141\162\040\056\143\154\157" + "\163\145\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\143\141\154\145\156\144\141\162" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\054\040\056\164\157\157\154\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\056\164\157\157\154\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\054\040\155\145\156\165\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\142\165\164\164\157\156\056\146\154" + "\141\164\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\054\060\056\065\051" + "\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072" + "\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\055\062\160\170\073\040\175\012\012\056" + "\157\163\144\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056" + "\143\154\157\163\145\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\157\163\144\040\056\143\154\157\163" + "\145\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\157\163\144\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\056\157\163\144\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\056\164\157\157\154\142\141\162\040\056\157" + "\163\144\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\056\157\163\144\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\150\145\141\144\145\162\142\141\162\040\056\157\163\144" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\056\157\163\144\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\157\163\144\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\141\162\162\157\167" + "\055\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\157\163\144\040\056\164\157\157" + "\154\142\141\162\040\142\165\164\164\157\156\056\141\162\162\157" + "\167\055\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\157\163\144\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\056\157\163\144\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\157\163\144\040\150\145\141\144\145\162\142\141\162\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\150\145\141\144\145\162\142\141\162\040\056\157\163\144\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\157\163\144\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\157\163\144\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\157\163\144\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\157\163\144\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\157\163\144\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\056\164\157\157\154\142\141\162\040\056\157\163\144\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\150\145\141\144\145\162\142\141\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\056\157\163" + "\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\157\163\144\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\157\163" + "\144\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\157\163\144\040\056\164\157\157\154\142" + "\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164" + "\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056\157" + "\163\144\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154" + "\142\141\162\040\056\157\163\144\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\157\163\144\040\150\145\141\144\145\162\142\141\162\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\056\157\163\144\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\157\163\144\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\165\160\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\157\163\144\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\056\157\163\144\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\056\157\163\144\040\167\151\156\144\157\167\056\144\151" + "\141\154\157\147\056\155\145\163\163\141\147\145\056\143\163\144" + "\040\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\141\162\145\141\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\167\151\156\144\157\167\056\144\151\141\154\157\147" + "\056\155\145\163\163\141\147\145\056\143\163\144\040\056\157\163" + "\144\040\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\141\162\145\141\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\056\157\163\144\040\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\142\157\170\056\143\151\162\143\165\154" + "\141\162\055\142\165\164\164\157\156\163\040\142\165\164\164\157" + "\156\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\155\157\144\145\154\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\142\157\170\056\143\151\162\143\165\154\141\162\055\142\165\164" + "\164\157\156\163\040\056\157\163\144\040\142\165\164\164\157\156" + "\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\155\157\144\145\154\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\054\040\056\157\163\144\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\151\156\154\151\156\145\055\142" + "\165\164\164\157\156\163\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\155\157\144\145\154" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\151\156\154\151\156\145\055\142\165" + "\164\164\157\156\163\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155" + "\157\144\145\154\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040\146" + "\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150" + "\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076" + "\040\142\157\170\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\146\151\154\145\143\150\157\157\163\145\162\040\056" + "\157\163\144\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\056\157\163\144" + "\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141" + "\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153" + "\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\146\151\154\145\143" + "\150\157\157\163\145\162\040\056\157\163\144\040\043\160\141\164" + "\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\040\076\040\142\157\170\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040\146" + "\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150" + "\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076" + "\040\142\157\170\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\056\157\163\144" + "\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\054\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\163\151\144\145\142\141\162\055\142\165\164\164\157\156" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\054\040\056\157\163\144\040\142\165\164\164\157" + "\156\056\145\155\157\152\151\055\163\145\143\164\151\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\157\163\144" + "\040\151\156\146\157\142\141\162\040\056\143\154\157\163\145\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\151\156\146\157\142\141\162\040\056\157\163" + "\144\040\056\143\154\157\163\145\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056\157" + "\163\144\040\143\141\154\145\156\144\141\162\040\076\040\150\145" + "\141\144\145\162\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\056\157\163\144\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040" + "\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\157\163\144\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\157\163\144" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\054\040\056\164\157\157\154\142\141\162\040\056\157" + "\163\144\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\150\145\141\144\145\162" + "\142\141\162\040\056\157\163\144\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\056\157\163" + "\144\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056\157" + "\163\144\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056" + "\157\163\144\040\056\164\157\157\154\142\141\162\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\056\157\163\144\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\056\157\163\144\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\056\164\157\157\154\142\141\162\040\056\157\163\144\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056" + "\157\163\144\040\150\145\141\144\145\162\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\150" + "\145\141\144\145\162\142\141\162\040\056\157\163\144\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056" + "\157\163\144\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\146\154\141\164\040\076\040\142\165\164\164\157\156\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\056\157\163\144\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\056\157\163\144\040\155\145\156\165\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157" + "\156\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\142\165\164\164" + "\157\156\056\146\154\141\164\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\040\173\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\072\040\162\147\142" + "\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054" + "\040\060\056\065\051\073\040\175\012\012\163\145\141\162\143\150" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\056\143\154\157\163\145\072\150\157\166\145" + "\162\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\150\157\166\145\162\054\040\056\164\157" + "\157\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\150\157\166\145\162\054\040\150\145\141\144\145\162\142\141" + "\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\150\157\166" + "\145\162\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\142\165\164" + "\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164" + "\157\156\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\150\157\166\145\162\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\164\145\170\164\055\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\165\160\072\150\157\166\145\162\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\150\157\166\145\162\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\040\076\040\164\141\142\163\040\076\040\141\162\162\157" + "\167\072\150\157\166\145\162\054\040\167\151\156\144\157\167\056" + "\144\151\141\154\157\147\056\155\145\163\163\141\147\145\056\143" + "\163\144\040\056\144\151\141\154\157\147\055\141\143\164\151\157" + "\156\055\141\162\145\141\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162" + "\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056" + "\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\072\150\157\166\145" + "\162\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\142\157\170\056\151\156\154\151\156\145\055\142\165\164\164\157" + "\156\163\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\155\157\144\145\154\072\150\157\166" + "\145\162\054\040\146\151\154\145\143\150\157\157\163\145\162\040" + "\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163\164" + "\141\143\153\040\076\040\142\157\170\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\054\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\076\040\142\157\170\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\146\151\154\145\143\150\157\157\163\145" + "\162\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040" + "\163\164\141\143\153\040\076\040\142\157\170\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\072\150\157\166\145\162\054\040\142\165\164\164\157\156\056" + "\163\151\144\145\142\141\162\055\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\142\165\164\164\157\156\056\145\155\157" + "\152\151\055\163\145\143\164\151\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\151\156\146\157\142\141\162" + "\040\056\143\154\157\163\145\072\150\157\166\145\162\054\040\143" + "\141\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162" + "\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145" + "\162\054\040\056\164\157\157\154\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\150\157\166\145\162\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\150\157\166\145\162\054\040\056\164" + "\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\072\150\157\166\145\162\054\040\150\145\141\144\145\162" + "\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156" + "\072\150\157\166\145\162\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\146\154\141\164\040\076\040\142\165\164\164\157\156\072\150" + "\157\166\145\162\054\040\142\165\164\164\157\156\056\146\154\141" + "\164\072\150\157\166\145\162\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\060\067\051\073\040" + "\175\012\012\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\143\154\157\163\145\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040" + "\056\164\157\157\154\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\054\040\150\145\141\144\145\162\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\141\162\162\157\167\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\056\164\157\157\154\142\141\162\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\054\040\167\151\156\144\157\167" + "\056\144\151\141\154\157\147\056\155\145\163\163\141\147\145\056" + "\143\163\144\040\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\141\162\145\141\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162\055" + "\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\056\143\151\162\143\165\154\141\162\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\155\157\144\145\154\054\040" + "\160\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170" + "\056\151\156\154\151\156\145\055\142\165\164\164\157\156\163\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\155\157\144\145\154\054\040\146" + "\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150" + "\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076" + "\040\142\157\170\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\146\151\154\145\143\150\157\157\163\145\162\040\043" + "\160\141\164\150\142\141\162\142\157\170\040\076\040\163\164\141" + "\143\153\040\076\040\142\157\170\040\076\040\142\157\170\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\054\040\146\151\154" + "\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142\141" + "\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040\142" + "\157\170\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\054\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\056\163\151\144\145\142\141\162" + "\055\142\165\164\164\157\156\054\040\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\056\145\155\157\152\151\055\163\145\143\164\151\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\151\156\146\157\142\141" + "\162\040\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\056\143\154\157\163\145\054\040\143\141" + "\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\054\040\056\164\157\157" + "\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\054\040\150\145\141\144\145\162\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\056" + "\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\054\040\150\145\141\144\145\162\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\146\154\141\164\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146" + "\154\141\164\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\143\154\157\163\145\072\141" + "\143\164\151\166\145\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040\150" + "\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\141\143\164\151\166\145\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\142\165\164\164\157\156\056\141\162" + "\162\157\167\055\142\165\164\164\157\156\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\072\141\143\164\151\166\145\054\040" + "\167\151\156\144\157\167\056\144\151\141\154\157\147\056\155\145" + "\163\163\141\147\145\056\143\163\144\040\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\141\162\145\141\040\076\040" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170\056" + "\143\151\162\143\165\154\141\162\055\142\165\164\164\157\156\163" + "\040\142\165\164\164\157\156\056\143\151\162\143\165\154\141\162" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\155\157" + "\144\145\154\072\141\143\164\151\166\145\054\040\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\142\157\170\056\151\156\154" + "\151\156\145\055\142\165\164\164\157\156\163\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\155\157\144\145\154\072\141\143\164\151\166\145\054\040\146\151" + "\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142" + "\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\146\151\154\145\143\150\157\157\163\145\162" + "\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\040\076\040\142\157\170" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160" + "\141\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143" + "\153\040\076\040\142\157\170\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\054\040\142\165\164\164\157\156\056\163\151\144" + "\145\142\141\162\055\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\054\040\142\165\164\164\157\156\056\145\155\157\152\151" + "\055\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\151\156\146\157\142\141\162\040" + "\056\143\154\157\163\145\072\141\143\164\151\166\145\054\040\143" + "\141\154\145\156\144\141\162\040\076\040\150\145\141\144\145\162" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\054\040\056\164\157\157\154\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\054\040\150\145\141\144\145\162\142\141\162\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072\141" + "\143\164\151\166\145\054\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\141\143\164" + "\151\166\145\054\040\056\164\157\157\154\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\146\154\141\164" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154" + "\141\164\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145\054" + "\040\155\145\156\165\142\165\164\164\157\156\056\146\154\141\164" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\054\040\142\165\164\164\157\156\056\146\154\141\164\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\142\165\164\164\157\156\056\146\154\141\164\072\141" + "\143\164\151\166\145\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\066\051\073\040\175\012" + "\012\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\056\143\154\157" + "\163\145\072\143\150\145\143\153\145\144\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\054\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\054\040\150\145\141\144\145\162\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\142\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040" + "\076\040\164\141\142\163\040\076\040\141\162\162\157\167\072\143" + "\150\145\143\153\145\144\054\040\167\151\156\144\157\167\056\144" + "\151\141\154\157\147\056\155\145\163\163\141\147\145\056\143\163" + "\144\040\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\141\162\145\141\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\054\040\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\142\157\170\056\143\151\162\143\165\154\141" + "\162\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156" + "\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\155\157\144\145\154\072\143\150\145" + "\143\153\145\144\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\151\156\154\151\156\145\055\142\165" + "\164\164\157\156\163\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\155\157\144\145\154\072" + "\143\150\145\143\153\145\144\054\040\146\151\154\145\143\150\157" + "\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170" + "\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076" + "\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144\054" + "\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141" + "\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153" + "\040\076\040\142\157\170\040\076\040\142\157\170\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\054\040\146" + "\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150" + "\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076" + "\040\142\157\170\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\054\040\142\165\164\164\157\156\056\163\151\144\145\142" + "\141\162\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\054\040\142\165\164\164\157\156\056\145\155\157\152\151\055" + "\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\151\156\146\157\142\141\162\040" + "\056\143\154\157\163\145\072\143\150\145\143\153\145\144\054\040" + "\143\141\154\145\156\144\141\162\040\076\040\150\145\141\144\145" + "\162\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\054\040\056\164\157\157\154\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\054\040\150\145\141\144\145" + "\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\054\040\056\164\157" + "\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\054\040\150\145\141\144\145" + "\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\146\154\141\164\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\054\040\155\145\156" + "\165\142\165\164\164\157\156\056\146\154\141\164\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\054\040\142" + "\165\164\164\157\156\056\146\154\141\164\072\143\150\145\143\153" + "\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\051\073\040\175\012\012\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\056\143\154\157\163\145\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\155\145" + "\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\054\040\056\164\157\157\154\142\141\162" + "\040\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\143\150\145\143\153\145\144\072" + "\150\157\166\145\162\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\054\040\167\151\156\144" + "\157\167\056\144\151\141\154\157\147\056\155\145\163\163\141\147" + "\145\056\143\163\144\040\056\144\151\141\154\157\147\055\141\143" + "\164\151\157\156\055\141\162\145\141\040\076\040\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142" + "\157\170\056\143\151\162\143\165\154\141\162\055\142\165\164\164" + "\157\156\163\040\142\165\164\164\157\156\056\143\151\162\143\165" + "\154\141\162\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\155\157\144\145\154\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\151\156\154\151\156\145\055\142\165" + "\164\164\157\156\163\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\155\157\144\145\154\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\054\040\146" + "\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164\150" + "\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040\076" + "\040\142\157\170\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\054\040\146\151\154" + "\145\143\150\157\157\163\145\162\040\043\160\141\164\150\142\141" + "\162\142\157\170\040\076\040\163\164\141\143\153\040\076\040\142" + "\157\170\040\076\040\142\157\170\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054" + "\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141" + "\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153" + "\040\076\040\142\157\170\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\054\040\142\165\164\164" + "\157\156\056\163\151\144\145\142\141\162\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054" + "\040\142\165\164\164\157\156\056\145\155\157\152\151\055\163\145" + "\143\164\151\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\151\156\146\157" + "\142\141\162\040\056\143\154\157\163\145\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\054\040\143\141\154\145\156\144" + "\141\162\040\076\040\150\145\141\144\145\162\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166" + "\145\162\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150" + "\157\166\145\162\054\040\056\164\157\157\154\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\150\157\166\145\162\054\040\150\145\141" + "\144\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054" + "\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\150\157" + "\166\145\162\054\040\150\145\141\144\145\162\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\150\157\166\145\162\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\146\154\141\164\040\076\040\142\165\164" + "\164\157\156\072\143\150\145\143\153\145\144\072\150\157\166\145" + "\162\054\040\163\160\154\151\164\142\165\164\164\157\156\056\146" + "\154\141\164\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\150\157\166\145\162\054\040\155\145\156\165\142\165\164" + "\164\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\150\157\166\145\162\054" + "\040\142\165\164\164\157\156\056\146\154\141\164\072\143\150\145" + "\143\153\145\144\072\150\157\166\145\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061\063" + "\051\073\040\175\012\012\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\143\154\157\163\145\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\072\143\150\145\143\153\145\144\054\040\056\164\157\157\154" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\056\153" + "\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151" + "\156\147\072\143\150\145\143\153\145\144\054\040\150\145\141\144" + "\145\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156\056" + "\141\162\162\157\167\055\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151" + "\166\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\056\164\157\157\154\142" + "\141\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\142\165\164\164\157\156\056\141" + "\162\162\157\167\055\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144" + "\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143" + "\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056" + "\164\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164\055" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164" + "\157\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\164\145\170\164\055\142\165\164\164\157\156\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141\162" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145" + "\170\164\055\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\144\157\167\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167\056" + "\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141\164" + "\151\156\147\072\143\150\145\143\153\145\144\054\040\167\151\156" + "\144\157\167\056\144\151\141\154\157\147\056\155\145\163\163\141" + "\147\145\056\143\163\144\040\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\141\162\145\141\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142\157" + "\170\056\143\151\162\143\165\154\141\162\055\142\165\164\164\157" + "\156\163\040\142\165\164\164\157\156\056\143\151\162\143\165\154" + "\141\162\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\155\157\144\145\154\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\142\157\170\056\151\156\154\151\156\145\055\142\165\164\164\157" + "\156\163\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\155\157\144\145\154\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\054\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157" + "\170\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141\162" + "\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150\145" + "\143\153\145\144\054\040\146\151\154\145\143\150\157\157\163\145" + "\162\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040" + "\163\164\141\143\153\040\076\040\142\157\170\040\076\040\142\157" + "\170\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\054\040\146\151\154\145\143\150\157\157" + "\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054" + "\040\142\165\164\164\157\156\056\163\151\144\145\142\141\162\055" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\054\040\142\165\164\164\157\156\056\145\155\157\152\151" + "\055\163\145\143\164\151\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141" + "\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145" + "\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\151\156\146" + "\157\142\141\162\040\056\143\154\157\163\145\056\153\145\171\142" + "\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072" + "\143\150\145\143\153\145\144\054\040\143\141\154\145\156\144\141" + "\162\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164" + "\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143\164" + "\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040\056" + "\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\054\040\150\145\141\144\145\162\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\056\153\145\171" + "\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156\147" + "\072\143\150\145\143\153\145\144\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\054\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\153\145\171\142\157\141\162\144\055" + "\141\143\164\151\166\141\164\151\156\147\072\143\150\145\143\153" + "\145\144\054\040\150\145\141\144\145\162\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157\141" + "\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143\150" + "\145\143\153\145\144\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\153\145\171\142\157\141\162\144\055\141\143" + "\164\151\166\141\164\151\156\147\072\143\150\145\143\153\145\144" + "\054\040\155\145\156\165\142\165\164\164\157\156\056\146\154\141" + "\164\040\076\040\142\165\164\164\157\156\056\153\145\171\142\157" + "\141\162\144\055\141\143\164\151\166\141\164\151\156\147\072\143" + "\150\145\143\153\145\144\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\143\154\157\163\145\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\054\040\056\164\157\157\154\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\054\040\150\145\141\144\145\162" + "\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040\141" + "\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\142\165\164\164\157\156\056\141\162\162\157\167\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156" + "\056\141\162\162\157\167\055\142\165\164\164\157\156\072\143\150" + "\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142\141" + "\162\040\142\165\164\164\157\156\056\141\162\162\157\167\055\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072" + "\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\164\145\170\164\055\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166" + "\145\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157" + "\157\154\142\141\162\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\143" + "\150\145\143\153\145\144\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\164\145\170\164\055\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\072\156\157\164\050\056\146\154\141\164\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\054\040\167\151\156\144\157" + "\167\056\144\151\141\154\157\147\056\155\145\163\163\141\147\145" + "\056\143\163\144\040\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\141\162\145\141\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\142" + "\157\170\056\143\151\162\143\165\154\141\162\055\142\165\164\164" + "\157\156\163\040\142\165\164\164\157\156\056\143\151\162\143\165" + "\154\141\162\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\155\157\144\145\154\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\151\156\154\151\156\145\055\142" + "\165\164\164\157\156\163\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\155\157\144\145\154" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054" + "\040\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141" + "\164\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153" + "\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\043\160\141\164" + "\150\142\141\162\142\157\170\040\076\040\163\164\141\143\153\040" + "\076\040\142\157\170\040\076\040\142\157\170\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\146\151\154\145\143\150\157\157\163\145\162" + "\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054" + "\040\142\165\164\164\157\156\056\163\151\144\145\142\141\162\055" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\054\040\142\165\164\164\157\156\056\145\155" + "\157\152\151\055\163\145\143\164\151\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\151\156\146\157\142\141\162\040\056\143\154\157\163" + "\145\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\054\040\143\141\154\145\156\144\141\162\040\076\040\150\145\141" + "\144\145\162\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\141\143\164\151\166\145\054\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054" + "\040\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\054\040\150\145\141\144\145\162\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\141\143\164\151\166\145" + "\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\141\143\164\151\166\145\054\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\143\150\145\143\153\145\144\072\141\143\164\151\166\145\054\040" + "\056\164\157\157\154\142\141\162\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\150\145\141\144\145\162\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\054\040\163\160\154\151\164" + "\142\165\164\164\157\156\056\146\154\141\164\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\146\154\141\164\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\146\154\141\164\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\142\165\164\164\157\156\056\146\154\141\164" + "\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166\141" + "\164\151\156\147\072\143\150\145\143\153\145\144\054\040\142\165" + "\164\164\157\156\056\146\154\141\164\072\143\150\145\143\153\145" + "\144\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\061\071\051\073" + "\040\175\012\012\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\056" + "\143\154\157\163\145\072\144\151\163\141\142\154\145\144\072\156" + "\157\164\050\072\143\150\145\143\153\145\144\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\072\143\150\145\143\153\145\144\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\054\040\056\164\157\157\154\142" + "\141\162\040\155\145\156\165\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\142\165\164\164\157\156\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143" + "\153\145\144\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\155\145\156\165\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\144\151\163\141\142" + "\154\145\144\072\156\157\164\050\072\143\150\145\143\153\145\144" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142\165" + "\164\164\157\156\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\072\143\150\145\143\153\145\144\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170" + "\164\055\142\165\164\164\157\156\072\144\151\163\141\142\154\145" + "\144\072\156\157\164\050\072\143\150\145\143\153\145\144\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\164\145\170\164\055\142\165\164\164\157\156\072\144" + "\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145" + "\143\153\145\144\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\164\145\170\164" + "\055\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144" + "\072\156\157\164\050\072\143\150\145\143\153\145\144\051\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143" + "\153\145\144\051\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040" + "\076\040\164\141\142\163\040\076\040\141\162\162\157\167\072\144" + "\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145" + "\143\153\145\144\051\054\040\167\151\156\144\157\167\056\144\151" + "\141\154\157\147\056\155\145\163\163\141\147\145\056\143\163\144" + "\040\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\141\162\145\141\040\076\040\142\165\164\164\157\156\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143" + "\153\145\144\051\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162\055" + "\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056\143" + "\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\155\157\144\145\154\072\144\151\163\141\142" + "\154\145\144\072\156\157\164\050\072\143\150\145\143\153\145\144" + "\051\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\142\157\170\056\151\156\154\151\156\145\055\142\165\164\164\157" + "\156\163\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\155\157\144\145\154\072\144\151\163" + "\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143\153" + "\145\144\051\054\040\146\151\154\145\143\150\157\157\163\145\162" + "\040\043\160\141\164\150\142\141\162\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\142\157\170\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\072\143\150\145\143\153\145\144\051\054\040\146\151\154\145" + "\143\150\157\157\163\145\162\040\043\160\141\164\150\142\141\162" + "\142\157\170\040\076\040\163\164\141\143\153\040\076\040\142\157" + "\170\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\054\040\146\151\154\145\143\150\157" + "\157\163\145\162\040\043\160\141\164\150\142\141\162\142\157\170" + "\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\054\040\142\165\164" + "\164\157\156\056\163\151\144\145\142\141\162\055\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\054\040\142\165\164\164\157" + "\156\056\145\155\157\152\151\055\163\145\143\164\151\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\072\144\151\163" + "\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143\153" + "\145\144\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\151" + "\156\146\157\142\141\162\040\056\143\154\157\163\145\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145\143" + "\153\145\144\051\054\040\143\141\154\145\156\144\141\162\040\076" + "\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\072\143\150\145\143\153\145\144\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\054\040\056\164\157" + "\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165" + "\164\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\142" + "\165\164\164\157\156\072\144\151\163\141\142\154\145\144\072\156" + "\157\164\050\072\143\150\145\143\153\145\144\051\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\054\040\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164" + "\050\072\143\150\145\143\153\145\144\051\054\040\056\164\157\157" + "\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\054\040\150\145\141\144\145\162\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\144" + "\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150\145" + "\143\153\145\144\051\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\146\154\141\164\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143\150" + "\145\143\153\145\144\051\054\040\155\145\156\165\142\165\164\164" + "\157\156\056\146\154\141\164\040\076\040\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\054\040\142\165\164\164\157\156\056" + "\146\154\141\164\072\144\151\163\141\142\154\145\144\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\040\173\040\146\151" + "\154\164\145\162\072\040\157\160\141\143\151\164\171\050\060\056" + "\063\051\073\040\175\012\012\163\164\141\143\153\163\167\151\164" + "\143\150\145\162\040\076\040\142\165\164\164\157\156\040\076\040" + "\154\141\142\145\154\040\173\040\160\141\144\144\151\156\147\072" + "\040\060\040\066\160\170\073\040\155\141\162\147\151\156\072\040" + "\060\040\055\066\160\170\073\040\175\012\012\163\164\141\143\153" + "\163\167\151\164\143\150\145\162\040\076\040\142\165\164\164\157" + "\156\040\076\040\151\155\141\147\145\040\173\040\160\141\144\144" + "\151\156\147\072\040\063\160\170\040\066\160\170\073\040\155\141" + "\162\147\151\156\072\040\055\063\160\170\040\055\066\160\170\073" + "\040\175\012\012\163\164\141\143\153\163\167\151\164\143\150\145" + "\162\040\076\040\142\165\164\164\157\156\056\164\145\170\164\055" + "\142\165\164\164\157\156\040\173\040\155\151\156\055\167\151\144" + "\164\150\072\040\061\060\060\160\170\073\040\175\012\012\142\165" + "\164\164\157\156\056\146\157\156\164\040\163\145\160\141\162\141" + "\164\157\162\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\175\012\012\142\165\164\164\157\156\056\146" + "\157\156\164\040\076\040\142\157\170\040\173\040\142\157\162\144" + "\145\162\055\163\160\141\143\151\156\147\072\040\066\160\170\073" + "\040\175\012\012\142\165\164\164\157\156\056\146\157\156\164\040" + "\076\040\142\157\170\040\076\040\142\157\170\040\076\040\154\141" + "\142\145\154\040\173\040\146\157\156\164\055\167\145\151\147\150" + "\164\072\040\142\157\154\144\073\040\175\012\012\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\054\040\162\157\167\056\163\160" + "\151\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164" + "\055\143\150\151\154\144\072\144\151\162\050\154\164\162\051\072" + "\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146\154" + "\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154\141" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\162\164\154" + "\051\072\146\151\162\163\164\055\143\150\151\154\144\054\040\162" + "\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\162\157\167\056\163\160\151\156\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\144\157" + "\167\156\072\156\157\164\050\056\146\154\141\164\051\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\072\144\151\162\050\154\164\162\051" + "\072\154\141\163\164\055\143\150\151\154\144\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\142\165\164\164\157\156\056\145\155" + "\157\152\151\055\163\145\143\164\151\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\155\145\156\165\142\165\164\164\157\156\056\143" + "\151\162\143\165\154\141\162\040\076\040\142\165\164\164\157\156" + "\054\040\142\165\164\164\157\156\056\143\151\162\143\165\154\141" + "\162\040\173\040\155\151\156\055\167\151\144\164\150\072\040\063" + "\064\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\063\064\160\170\073\040\160\141\144\144\151\156\147\072\040" + "\060\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\071\071\071\071\160\170\073\040\175\012\012\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\040\154\141\142\145\154\054" + "\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157" + "\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151" + "\162\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154" + "\144\040\154\141\142\145\154\054\040\162\157\167\056\163\160\151" + "\156\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\154\141\163\164\055" + "\143\150\151\154\144\072\144\151\162\050\162\164\154\051\072\146" + "\151\162\163\164\055\143\150\151\154\144\040\154\141\142\145\154" + "\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\154\141\142\145\154\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143" + "\150\151\154\144\040\154\141\142\145\154\054\040\162\157\167\056" + "\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143" + "\150\151\154\144\040\154\141\142\145\154\054\040\142\165\164\164" + "\157\156\056\145\155\157\152\151\055\163\145\143\164\151\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\154\141\142\145\154\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\143\151\162\143\165\154" + "\141\162\040\076\040\142\165\164\164\157\156\040\154\141\142\145" + "\154\054\040\142\165\164\164\157\156\056\143\151\162\143\165\154" + "\141\162\040\154\141\142\145\154\040\173\040\160\141\144\144\151" + "\156\147\072\040\060\073\040\175\012\012\155\145\156\165\142\165" + "\164\164\157\156\056\160\151\154\154\040\076\040\142\165\164\164" + "\157\156\054\040\142\165\164\164\157\156\056\160\151\154\154\040" + "\173\040\160\141\144\144\151\156\147\072\040\061\060\160\170\040" + "\063\062\160\170\073\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\071\071\071\071\160\170\073\040\175\012\012" + "\142\165\164\164\157\156\056\143\141\162\144\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\100\143\141\162\144\137\142\147\137\143\157\154\157\162\073\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\154\151\160\072" + "\040\160\141\144\144\151\156\147\055\142\157\170\073\040\146\157" + "\156\164\055\167\145\151\147\150\164\072\040\151\156\150\145\162" + "\151\164\073\040\160\141\144\144\151\156\147\072\040\060\073\040" + "\175\012\012\142\165\164\164\157\156\056\143\141\162\144\040\173" + "\040\157\165\164\154\151\156\145\072\040\060\040\163\157\154\151" + "\144\040\164\162\141\156\163\160\141\162\145\156\164\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\065" + "\160\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156" + "\145\055\167\151\144\164\150\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\142" + "\141\143\153\147\162\157\165\156\144\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\054\040\142\157\170\055\163\150\141\144\157\167" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\073\040\175\012\012" + "\142\165\164\164\157\156\056\143\141\162\144\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040" + "\173\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\100\141\143\143\145\156\164\137\143" + "\157\154\157\162\054\060\056\065\051\073\040\157\165\164\154\151" + "\156\145\055\167\151\144\164\150\072\040\062\160\170\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\055" + "\061\160\170\073\040\175\012\012\142\165\164\164\157\156\056\143" + "\141\162\144\072\150\157\166\145\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155" + "\141\147\145\050\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\060\064\051\051\073\040\175" + "\012\012\142\165\164\164\157\156\056\143\141\162\144\056\153\145" + "\171\142\157\141\162\144\055\141\143\164\151\166\141\164\151\156" + "\147\054\040\142\165\164\164\157\156\056\143\141\162\144\072\141" + "\143\164\151\166\145\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\151\155\141\147\145\072\040\151\155\141\147\145\050" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\060\070\051\051\073\040\175\012\012\142\165" + "\164\164\157\156\056\143\141\162\144\072\143\150\145\143\153\145" + "\144\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\100\143\141\162\144\137\142\147\137\143" + "\157\154\157\162\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\151\155\141\147\145\050\141\154" + "\160\150\141\050\100\141\143\143\145\156\164\137\142\147\137\143" + "\157\154\157\162\054\060\056\062\065\051\051\073\040\175\012\012" + "\142\165\164\164\157\156\056\143\141\162\144\072\143\150\145\143" + "\153\145\144\072\150\157\166\145\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155" + "\141\147\145\050\141\154\160\150\141\050\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\054\060\056\063\062\051" + "\051\073\040\175\012\012\142\165\164\164\157\156\056\143\141\162" + "\144\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\072\143\150\145\143\153\145\144\054\040\142" + "\165\164\164\157\156\056\143\141\162\144\072\143\150\145\143\153" + "\145\144\072\141\143\164\151\166\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155" + "\141\147\145\050\141\154\160\150\141\050\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\054\060\056\063\071\051" + "\051\073\040\175\012\012\142\165\164\164\157\156\056\143\141\162" + "\144\056\150\141\163\055\157\160\145\156\055\160\157\160\165\160" + "\072\143\150\145\143\153\145\144\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\151\155\141" + "\147\145\050\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\054\060\056\063\062\051\051" + "\073\040\175\012\012\056\157\163\144\040\142\165\164\164\157\156" + "\056\143\141\162\144\072\143\150\145\143\153\145\144\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\061\051\073\040\175\012\012\142\165" + "\164\164\157\156\056\143\141\162\144\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\040\173\040\143\157\154\157\162\072\040" + "\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162" + "\073\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\060\040\060\040\060\040\061\160\170\040\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073\040" + "\175\012\012\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\155\157\144\145\154\142\165\164\164\157\156\054\040\142\165\164" + "\164\157\156\056\154\151\156\153\054\040\142\165\164\164\157\156" + "\056\154\151\156\153\072\150\157\166\145\162\054\040\142\165\164" + "\164\157\156\056\154\151\156\153\072\141\143\164\151\166\145\054" + "\040\142\165\164\164\157\156\056\154\151\156\153\072\143\150\145" + "\143\153\145\144\054\040\143\157\154\165\155\156\166\151\145\167" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\054\040\164\162\145\145\166\151\145\167\056\166\151\145" + "\167\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164" + "\164\157\156\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040\150" + "\145\141\144\145\162\040\076\040\142\165\164\164\157\156\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040" + "\175\012\012\142\165\164\164\157\156\056\143\157\154\157\162\040" + "\173\040\160\141\144\144\151\156\147\072\040\065\160\170\073\040" + "\175\012\012\142\165\164\164\157\156\056\143\157\154\157\162\040" + "\076\040\143\157\154\157\162\163\167\141\164\143\150\072\157\156" + "\154\171\055\143\150\151\154\144\040\173\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\062\056\065\160\170\073" + "\040\175\012\012\142\165\164\164\157\156\056\143\157\154\157\162" + "\040\076\040\143\157\154\157\162\163\167\141\164\143\150\072\157" + "\156\154\171\055\143\150\151\154\144\040\076\040\157\166\145\162" + "\154\141\171\040\173\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\062\160\170\073\040\175\012\012\142\165\164" + "\164\157\156\056\143\157\154\157\162\040\076\040\143\157\154\157" + "\162\163\167\141\164\143\150\072\157\156\154\171\055\143\150\151" + "\154\144\072\144\151\163\141\142\154\145\144\040\173\040\146\151" + "\154\164\145\162\072\040\156\157\156\145\073\040\175\012\012\142" + "\165\164\164\157\156\056\143\157\154\157\162\040\076\040\143\157" + "\154\157\162\163\167\141\164\143\150\056\154\151\147\150\164\072" + "\157\156\154\171\055\143\150\151\154\144\040\076\040\157\166\145" + "\162\154\141\171\040\173\040\142\157\162\144\145\162\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\100\166\151\145\167" + "\137\146\147\137\143\157\154\157\162\054\060\056\061\051\073\040" + "\175\012\012\155\145\156\165\142\165\164\164\157\156\056\157\163" + "\144\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\156\157\156\145\073\040\143\157\154\157\162\072\040\151\156\150" + "\145\162\151\164\073\040\175\012\012\155\145\156\165\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162" + "\072\040\100\141\143\143\145\156\164\137\146\147\137\143\157\154" + "\157\162\073\040\175\012\012\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\144\145\163\164\162\165" + "\143\164\151\166\145\137\142\147\137\143\157\154\157\162\073\040" + "\143\157\154\157\162\072\040\100\144\145\163\164\162\165\143\164" + "\151\166\145\137\146\147\137\143\157\154\157\162\073\040\175\012" + "\012\155\145\156\165\142\165\164\164\157\156\056\157\160\141\161" + "\165\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\155\151\170\050\100\167\151\156\144" + "\157\167\137\142\147\137\143\157\154\157\162\054\100\167\151\156" + "\144\157\167\137\146\147\137\143\157\154\157\162\054\060\056\061" + "\065\051\073\040\143\157\154\157\162\072\040\100\167\151\156\144" + "\157\167\137\146\147\137\143\157\154\157\162\073\040\175\012\012" + "\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\054\040\155\145\156" + "\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\054\040\155\145\156\165" + "\142\165\164\164\157\156\056\157\160\141\161\165\145\040\173\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066" + "\160\170\073\040\175\012\012\155\145\156\165\142\165\164\164\157" + "\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\056\143\151\162\143\165\154\141\162\054\040\155\145\156" + "\165\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\056\160\151\154\154\054\040\155" + "\145\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\056\143\151\162" + "\143\165\154\141\162\054\040\155\145\156\165\142\165\164\164\157" + "\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\056\160\151\154\154\054\040\155\145\156\165\142" + "\165\164\164\157\156\056\157\160\141\161\165\145\056\143\151\162" + "\143\165\154\141\162\054\040\155\145\156\165\142\165\164\164\157" + "\156\056\157\160\141\161\165\145\056\160\151\154\154\040\173\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\071" + "\071\071\071\160\170\073\040\175\012\012\155\145\156\165\142\165" + "\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\054\040" + "\155\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\054\040\155\145" + "\156\165\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\054\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\054\040\155\145\156\165\142\165\164\164\157\156\056\157\160\141" + "\161\165\145\040\076\040\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141" + "\162\145\156\164\073\040\143\157\154\157\162\072\040\151\156\150" + "\145\162\151\164\073\040\175\012\012\155\145\156\165\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\040\173\040\155\151\156\055" + "\167\151\144\164\150\072\040\062\064\160\170\073\040\160\141\144" + "\144\151\156\147\055\154\145\146\164\072\040\065\160\170\073\040" + "\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040\065" + "\160\170\073\040\175\012\012\155\145\156\165\142\165\164\164\157" + "\156\056\143\141\162\144\040\076\040\142\165\164\164\157\156\040" + "\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072" + "\040\061\062\160\170\073\040\175\012\012\155\145\156\165\142\165" + "\164\164\157\156\040\141\162\162\157\167\040\173\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\061\066\160\170\073\040\155" + "\151\156\055\167\151\144\164\150\072\040\061\066\160\170\073\040" + "\175\012\012\155\145\156\165\142\165\164\164\157\156\040\141\162" + "\162\157\167\056\156\157\156\145\040\173\040\055\147\164\153\055" + "\151\143\157\156\055\163\157\165\162\143\145\072\040\055\147\164" + "\153\055\151\143\157\156\164\150\145\155\145\050\042\157\160\145" + "\156\055\155\145\156\165\055\163\171\155\142\157\154\151\143\042" + "\051\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156" + "\040\141\162\162\157\167\056\144\157\167\156\040\173\040\055\147" + "\164\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040" + "\055\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042" + "\160\141\156\055\144\157\167\156\055\163\171\155\142\157\154\151" + "\143\042\051\073\040\175\012\012\155\145\156\165\142\165\164\164" + "\157\156\040\141\162\162\157\167\056\165\160\040\173\040\055\147" + "\164\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040" + "\055\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042" + "\160\141\156\055\165\160\055\163\171\155\142\157\154\151\143\042" + "\051\073\040\175\012\012\155\145\156\165\142\165\164\164\157\156" + "\040\141\162\162\157\167\056\154\145\146\164\040\173\040\055\147" + "\164\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040" + "\055\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042" + "\160\141\156\055\163\164\141\162\164\055\163\171\155\142\157\154" + "\151\143\042\051\073\040\175\012\012\155\145\156\165\142\165\164" + "\164\157\156\040\141\162\162\157\167\056\162\151\147\150\164\040" + "\173\040\055\147\164\153\055\151\143\157\156\055\163\157\165\162" + "\143\145\072\040\055\147\164\153\055\151\143\157\156\164\150\145" + "\155\145\050\042\160\141\156\055\145\156\144\055\163\171\155\142" + "\157\154\151\143\042\051\073\040\175\012\012\163\160\154\151\164" + "\142\165\164\164\157\156\040\173\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\066\160\170\073\040\175\012\012" + "\163\160\154\151\164\142\165\164\164\157\156\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\040\076\040\163\145\160\141\162" + "\141\164\157\162\040\173\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\142\141\143\153\147\162\157\165\156\144\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\142\157\170\055\163\150" + "\141\144\157\167\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073" + "\040\164\162\141\156\163\151\164\151\157\156\055\160\162\157\160" + "\145\162\164\171\072\040\142\141\143\153\147\162\157\165\156\144" + "\073\040\175\012\012\163\160\154\151\164\142\165\164\164\157\156" + "\040\076\040\163\145\160\141\162\141\164\157\162\040\173\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\066\160\170\073\040" + "\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040\066" + "\160\170\073\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\156\157\156\145\073\040\175\012\012\163\160\154\151\164\142\165" + "\164\164\157\156\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\040\173\040\160\141\144" + "\144\151\156\147\055\154\145\146\164\072\040\064\160\170\073\040" + "\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040\064" + "\160\170\073\040\175\012\012\163\160\154\151\164\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\040\173\040\155\151\156\055\167" + "\151\144\164\150\072\040\062\064\160\170\073\040\160\141\144\144" + "\151\156\147\055\154\145\146\164\072\040\065\160\170\073\040\160" + "\141\144\144\151\156\147\055\162\151\147\150\164\072\040\065\160" + "\170\073\040\175\012\012\163\160\154\151\164\142\165\164\164\157" + "\156\056\164\145\170\164\055\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\164\145\170\164\055\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\040\173\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\071\160\170\073" + "\040\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040" + "\071\160\170\073\040\175\012\012\163\160\154\151\164\142\165\164" + "\164\157\156\056\164\145\170\164\055\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\040\076\040\142\157\170\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\151\155\141\147\145\055\164" + "\145\170\164\055\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\040\076\040\142\157\170\040\173\040\142\157\162\144" + "\145\162\055\163\160\141\143\151\156\147\072\040\066\160\170\073" + "\040\175\012\012\163\160\154\151\164\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\040\173\040\146\151\154\164\145" + "\162\072\040\157\160\141\143\151\164\171\050\060\056\065\051\073" + "\040\175\012\012\163\160\154\151\164\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\040\076\040\142\165\164\164\157" + "\156\054\040\163\160\154\151\164\142\165\164\164\157\156\072\144" + "\151\163\141\142\154\145\144\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\040\173\040" + "\146\151\154\164\145\162\072\040\156\157\156\145\073\040\175\012" + "\012\163\160\154\151\164\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\072\144\151\162\050\154\164\162\051\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\072\144\151\162\050\162\164\154\051\040\173\040\142\157\162" + "\144\145\162\055\164\157\160\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\155\141\162\147\151\156\055\162" + "\151\147\150\164\072\040\055\061\160\170\073\040\175\012\012\163" + "\160\154\151\164\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\072\144\151\162\050\162\164\154\051\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\144\151\162\050\154\164\162\051\040\173\040\142\157\162\144\145" + "\162\055\164\157\160\055\154\145\146\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164" + "\164\157\155\055\154\145\146\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\155\141\162\147\151\156\055\154\145\146\164\072" + "\040\055\061\160\170\073\040\175\012\012\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\163\145\160" + "\141\162\141\164\157\162\054\040\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\163\160\154\151\164\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\163\145\160\141\162" + "\141\164\157\162\054\040\056\164\157\157\154\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\163\145\160\141\162\141\164\157\162" + "\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\163\145\160\141\162\141\164\157\162\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\146\154\141\164\040" + "\076\040\163\145\160\141\162\141\164\157\162\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\063" + "\051\073\040\175\012\012\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\150\157\166" + "\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\150\157\166\145\162\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\056\164\157\157\154\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\054\040\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\054\040\056\164\157\157\154\142\141\162" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040" + "\150\145\141\144\145\162\142\141\162\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\143\150\145\143\153\145\144\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\146\154\141\164\072\150\157\166\145\162\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154\141" + "\164\072\141\143\164\151\166\145\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\146\154\141\164\072\143\150\145\143\153" + "\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\060\067\051\073\040\175\012\012\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\150\157\166\145\162\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\163\145\160\141\162\141\164\157\162" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\150\157\166\145\162\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\163\145\160\141\162" + "\141\164\157\162\054\040\056\164\157\157\154\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\150\157\166\145\162" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\163\145\160" + "\141\162\141\164\157\162\054\040\150\145\141\144\145\162\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\150\157" + "\166\145\162\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\163\145\160\141\162\141\164\157\162\054\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\072\156\157\164\050\056\162\141" + "\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165" + "\145\051\040\076\040\163\145\160\141\162\141\164\157\162\054\040" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\141\143\164\151\166\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\163\145\160\141\162\141" + "\164\157\162\054\040\056\164\157\157\154\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\163\145\160" + "\141\162\141\164\157\162\054\040\150\145\141\144\145\162\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\141\143" + "\164\151\166\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\163\145\160\141\162\141\164\157\162\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\163\145\160\141\162\141\164\157\162" + "\054\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154" + "\151\164\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\163\145\160" + "\141\162\141\164\157\162\054\040\056\164\157\157\154\142\141\162" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\143\150\145" + "\143\153\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\163\145\160\141\162\141\164\157\162\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\163\145\160\141\162\141\164\157\162\054" + "\040\163\160\154\151\164\142\165\164\164\157\156\056\146\154\141" + "\164\072\150\157\166\145\162\040\076\040\163\145\160\141\162\141" + "\164\157\162\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\146\154\141\164\072\141\143\164\151\166\145\040\076\040\163" + "\145\160\141\162\141\164\157\162\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\146\154\141\164\072\143\150\145\143\153" + "\145\144\040\076\040\163\145\160\141\162\141\164\157\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156" + "\145\073\040\175\012\012\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\163\160\154\151\164\142\165\164\164\157\156\072\144\151\163" + "\141\142\154\145\144\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\144\151\163\141\142\154\145\144\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\054\040\150\145\141\144\145\162\142\141\162\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\144\151\163\141\142" + "\154\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\146\154\141\164\072" + "\144\151\163\141\142\154\145\144\040\173\040\146\151\154\164\145" + "\162\072\040\157\160\141\143\151\164\171\050\060\056\063\051\073" + "\040\175\012\012\141\143\164\151\157\156\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\144\151\163\141\142" + "\154\145\144\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040" + "\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\142\165\164" + "\164\157\156\072\144\151\163\141\142\154\145\144\054\040\056\164" + "\157\157\154\142\141\162\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\144\151\163\141\142\154\145\144\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\076\040\142\165\164\164\157\156\072\144" + "\151\163\141\142\154\145\144\054\040\150\145\141\144\145\162\142" + "\141\162\040\163\160\154\151\164\142\165\164\164\157\156\072\144" + "\151\163\141\142\154\145\144\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\072\144\151\163\141\142" + "\154\145\144\054\040\141\143\164\151\157\156\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\163\160\154\151\164\142\165\164\164\157\156\072\144\151\163\141" + "\142\154\145\144\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\144\151\163\141\142\154\145\144\054\040\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142" + "\165\164\164\157\156\072\144\151\163\141\142\154\145\144\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072\144" + "\151\163\141\142\154\145\144\054\040\056\164\157\157\154\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\144\151" + "\163\141\142\154\145\144\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144\054" + "\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151\164" + "\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156\165" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\072" + "\144\151\163\141\142\154\145\144\054\040\163\160\154\151\164\142" + "\165\164\164\157\156\056\146\154\141\164\072\144\151\163\141\142" + "\154\145\144\040\076\040\142\165\164\164\157\156\072\144\151\163" + "\141\142\154\145\144\054\040\163\160\154\151\164\142\165\164\164" + "\157\156\056\146\154\141\164\072\144\151\163\141\142\154\145\144" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\144\151\163\141\142\154\145\144\040" + "\173\040\146\151\154\164\145\162\072\040\156\157\156\145\073\040" + "\175\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\163\145\160\141\162\141\164\157\162\054\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\146\157\143\165\163\055\167\151\164\150\151\156\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\163\145\160\141\162\141" + "\164\157\162\054\040\056\164\157\157\154\142\141\162\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\163\145\160\141\162\141\164\157\162\054\040\150\145\141\144" + "\145\162\142\141\162\040\163\160\154\151\164\142\165\164\164\157" + "\156\072\146\157\143\165\163\055\167\151\164\150\151\156\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\040\076\040\163\145\160\141\162\141\164" + "\157\162\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\146\154\141\164\072\146\157\143\165\163\055\167\151\164\150\151" + "\156\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040" + "\076\040\163\145\160\141\162\141\164\157\162\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\072\040\156\157\156\145\073\040" + "\175\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163\160" + "\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\040\076\040\142\165\164\164\157\156\054\040\163\145" + "\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\160\154\151\164\142\165" + "\164\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\040\076" + "\040\142\165\164\164\157\156\054\040\056\164\157\157\154\142\141" + "\162\040\163\160\154\151\164\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\040\076\040\142\165\164\164\157\156" + "\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\142\165\164\164\157\156\054\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\163\160\154\151\164\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\054\040\163\145\141\162\143\150\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\163" + "\160\154\151\164\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\054\040\056\164\157\157" + "\154\142\141\162\040\163\160\154\151\164\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\040\076\040\155\145\156" + "\165\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\054\040\150\145\141\144\145\162\142\141\162\040\163\160\154\151" + "\164\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\054\040\163\160\154\151\164\142\165" + "\164\164\157\156\056\146\154\141\164\040\076\040\142\165\164\164" + "\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\146\154\141\164\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\040\173\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\066\160\170\073" + "\040\175\012\012\163\160\154\151\164\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\100\141\143\143\145\156\164\137\142\147\137" + "\143\157\154\157\162\073\040\143\157\154\157\162\072\040\100\141" + "\143\143\145\156\164\137\146\147\137\143\157\154\157\162\073\040" + "\175\012\012\163\160\154\151\164\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\100\144\145\163\164\162\165\143\164\151" + "\166\145\137\142\147\137\143\157\154\157\162\073\040\143\157\154" + "\157\162\072\040\100\144\145\163\164\162\165\143\164\151\166\145" + "\137\146\147\137\143\157\154\157\162\073\040\175\012\012\163\160" + "\154\151\164\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\155\151\170\050\100\167\151\156\144\157\167" + "\137\142\147\137\143\157\154\157\162\054\100\167\151\156\144\157" + "\167\137\146\147\137\143\157\154\157\162\054\060\056\061\065\051" + "\073\040\143\157\154\157\162\072\040\100\167\151\156\144\157\167" + "\137\146\147\137\143\157\154\157\162\073\040\175\012\012\163\160" + "\154\151\164\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\054\040\163\160\154\151\164\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157" + "\156\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\142\165\164\164\157\156\054\040\163\160\154" + "\151\164\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\040\076\040\142\165" + "\164\164\157\156\072\143\150\145\143\153\145\144\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\040\076\040\155" + "\145\156\165\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\143\150\145\143\153\145\144" + "\054\040\163\160\154\151\164\142\165\164\164\157\156\056\157\160" + "\141\161\165\145\040\076\040\142\165\164\164\157\156\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\040\076\040\142\165\164\164\157\156\072\143\150\145\143\153" + "\145\144\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\054\040\163\160" + "\154\151\164\142\165\164\164\157\156\056\157\160\141\161\165\145" + "\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040" + "\142\165\164\164\157\156\072\143\150\145\143\153\145\144\040\173" + "\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040" + "\175\012\012\163\160\154\151\164\142\165\164\164\157\156\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040" + "\076\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\072\144\151\162\050\154\164\162\051\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\155\145\156\165\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\072\144\151\162\050\154\164\162\051\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\056\157\160\141\161\165" + "\145\040\076\040\155\145\156\165\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\072\144\151\162\050\154\164\162\051" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\061\160\170\040\060\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\063\051\073\040\175\012\012\163\160\154\151\164\142\165\164\164" + "\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\072\144\151\162\050\162\164" + "\154\051\054\040\163\160\154\151\164\142\165\164\164\157\156\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\040\076\040\155\145\156\165\142\165\164\164\157\156\040" + "\076\040\142\165\164\164\157\156\072\144\151\162\050\162\164\154" + "\051\054\040\163\160\154\151\164\142\165\164\164\157\156\056\157" + "\160\141\161\165\145\040\076\040\155\145\156\165\142\165\164\164" + "\157\156\040\076\040\142\165\164\164\157\156\072\144\151\162\050" + "\162\164\154\051\040\173\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\055\061\160\170\040\060\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\063\051\073\040\175\012\012\163\160\154\151" + "\164\142\165\164\164\157\156\040\076\040\155\145\156\165\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\040\076\040" + "\141\162\162\157\167\056\156\157\156\145\040\173\040\055\147\164" + "\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040\055" + "\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042\160" + "\141\156\055\144\157\167\156\055\163\171\155\142\157\154\151\143" + "\042\051\073\040\175\012\012\142\165\164\164\157\156\143\157\156" + "\164\145\156\164\040\076\040\142\157\170\040\173\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160\170" + "\073\040\175\012\012\142\165\164\164\157\156\143\157\156\164\145" + "\156\164\040\076\040\142\157\170\040\076\040\154\141\142\145\154" + "\040\173\040\146\157\156\164\055\167\145\151\147\150\164\072\040" + "\142\157\154\144\073\040\175\012\012\142\165\164\164\157\156\143" + "\157\156\164\145\156\164\040\076\040\142\157\170\040\076\040\154" + "\141\142\145\154\072\144\151\162\050\154\164\162\051\040\173\040" + "\160\141\144\144\151\156\147\055\162\151\147\150\164\072\040\062" + "\160\170\073\040\175\012\012\142\165\164\164\157\156\143\157\156" + "\164\145\156\164\040\076\040\142\157\170\040\076\040\154\141\142" + "\145\154\072\144\151\162\050\162\164\154\051\040\173\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\062\160\170\073" + "\040\175\012\012\056\141\162\162\157\167\055\142\165\164\164\157" + "\156\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156" + "\143\157\156\164\145\156\164\040\076\040\142\157\170\040\076\040" + "\154\141\142\145\154\072\144\151\162\050\154\164\162\051\054\040" + "\163\160\154\151\164\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\040\076\040\142\165\164\164\157\156\143\157\156" + "\164\145\156\164\040\076\040\142\157\170\040\076\040\154\141\142" + "\145\154\072\144\151\162\050\154\164\162\051\040\173\040\160\141" + "\144\144\151\156\147\055\162\151\147\150\164\072\040\060\073\040" + "\175\012\012\056\141\162\162\157\167\055\142\165\164\164\157\156" + "\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156\143" + "\157\156\164\145\156\164\040\076\040\142\157\170\040\076\040\154" + "\141\142\145\154\072\144\151\162\050\162\164\154\051\054\040\163" + "\160\154\151\164\142\165\164\164\157\156\040\076\040\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\143\157\156\164" + "\145\156\164\040\076\040\142\157\170\040\076\040\154\141\142\145" + "\154\072\144\151\162\050\162\164\154\051\040\173\040\160\141\144" + "\144\151\156\147\055\154\145\146\164\072\040\060\073\040\175\012" + "\012\164\141\142\142\165\164\164\157\156\040\154\141\142\145\154" + "\040\173\040\146\157\156\164\055\167\145\151\147\150\164\072\040" + "\070\060\060\073\040\146\157\156\164\055\163\151\172\145\072\040" + "\070\160\164\073\040\175\012\012\164\141\142\142\165\164\164\157" + "\156\040\154\141\142\145\154\056\163\155\141\154\154\040\173\040" + "\146\157\156\164\055\163\151\172\145\072\040\066\160\164\073\040" + "\175\012\012\164\141\142\142\165\164\164\157\156\040\151\156\144" + "\151\143\141\164\157\162\142\151\156\040\076\040\151\156\144\151" + "\143\141\164\157\162\054\040\164\141\142\142\165\164\164\157\156" + "\040\151\156\144\151\143\141\164\157\162\142\151\156\040\076\040" + "\155\141\163\153\040\173\040\164\162\141\156\163\146\157\162\155" + "\072\040\164\162\141\156\163\154\141\164\145\050\055\061\160\170" + "\054\040\061\160\170\051\073\040\175\012\012\143\141\154\145\156" + "\144\141\162\040\173\040\143\157\154\157\162\072\040\100\166\151" + "\145\167\137\146\147\137\143\157\154\157\162\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\154\151\160\072\040\160\141" + "\144\144\151\156\147\055\142\157\170\073\040\142\157\162\144\145" + "\162\072\040\061\160\170\040\163\157\154\151\144\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\065\051\073\040\146\157\156\164\055\146\145\141\164" + "\165\162\145\055\163\145\164\164\151\156\147\163\072\040\042\164" + "\156\165\155\042\073\040\175\012\012\143\141\154\145\156\144\141" + "\162\040\076\040\150\145\141\144\145\162\040\173\040\142\157\162" + "\144\145\162\055\142\157\164\164\157\155\072\040\061\160\170\040" + "\163\157\154\151\144\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\065\051\073\040" + "\175\012\012\143\141\154\145\156\144\141\162\040\076\040\150\145" + "\141\144\145\162\040\076\040\142\165\164\164\157\156\040\173\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\060" + "\073\040\175\012\012\143\141\154\145\156\144\141\162\040\076\040" + "\147\162\151\144\040\173\040\160\141\144\144\151\156\147\055\154" + "\145\146\164\072\040\063\160\170\073\040\160\141\144\144\151\156" + "\147\055\142\157\164\164\157\155\072\040\063\160\170\073\040\175" + "\012\012\143\141\154\145\156\144\141\162\040\076\040\147\162\151" + "\144\040\076\040\154\141\142\145\154\056\164\157\144\141\171\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\060\160\170\040\055\062\160\170\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\065\051\073\040\175\012\012\143\141\154\145\156\144" + "\141\162\040\076\040\147\162\151\144\040\076\040\154\141\142\145" + "\154\056\164\157\144\141\171\072\163\145\154\145\143\164\145\144" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\175\012\012\143\141\154\145\156\144\141\162" + "\040\076\040\147\162\151\144\040\076\040\154\141\142\145\154\040" + "\173\040\155\141\162\147\151\156\055\164\157\160\072\040\063\160" + "\170\073\040\155\141\162\147\151\156\055\162\151\147\150\164\072" + "\040\063\160\170\073\040\175\012\012\143\141\154\145\156\144\141" + "\162\040\076\040\147\162\151\144\040\076\040\154\141\142\145\154" + "\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163\157" + "\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\064\160\170\073\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154" + "\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073" + "\040\175\012\012\143\141\154\145\156\144\141\162\040\076\040\147" + "\162\151\144\040\076\040\154\141\142\145\154\072\146\157\143\165" + "\163\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\143\157\154\157\162\054\060\056\065\051\073\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\072\040\062\160\170\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\055\062\160\170\073\040\175\012\012\143\141\154\145\156\144" + "\141\162\040\076\040\147\162\151\144\040\076\040\154\141\142\145" + "\154\056\144\141\171\055\156\165\155\142\145\162\040\173\040\160" + "\141\144\144\151\156\147\072\040\063\160\170\073\040\175\012\012" + "\143\141\154\145\156\144\141\162\040\076\040\147\162\151\144\040" + "\076\040\154\141\142\145\154\056\144\141\171\055\156\165\155\142" + "\145\162\072\143\150\145\143\153\145\144\040\173\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\066\160\170\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\054\060\056\063\051\073\040" + "\175\012\012\143\141\154\145\156\144\141\162\040\076\040\147\162" + "\151\144\040\076\040\154\141\142\145\154\056\144\141\171\055\156" + "\165\155\142\145\162\072\163\145\154\145\143\164\145\144\040\173" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\066\160\170\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\100\141\143\143\145\156\164\137\142" + "\147\137\143\157\154\157\162\073\040\143\157\154\157\162\072\040" + "\100\141\143\143\145\156\164\137\146\147\137\143\157\154\157\162" + "\073\040\175\012\012\143\141\154\145\156\144\141\162\040\076\040" + "\147\162\151\144\040\076\040\154\141\142\145\154\056\144\141\171" + "\055\156\165\155\142\145\162\056\157\164\150\145\162\055\155\157" + "\156\164\150\040\173\040\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\063\051\073\040\175\012\012\143\150\145\143\153\142\165" + "\164\164\157\156\040\173\040\142\157\162\144\145\162\055\163\160" + "\141\143\151\156\147\072\040\064\160\170\073\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\071\160\170\073\040" + "\160\141\144\144\151\156\147\072\040\063\160\170\073\040\175\012" + "\012\143\150\145\143\153\142\165\164\164\157\156\040\173\040\157" + "\165\164\154\151\156\145\072\040\060\040\163\157\154\151\144\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\064\160\170" + "\073\040\164\162\141\156\163\151\164\151\157\156\072\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\167\151\144\164\150\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\073\040\175\012\012" + "\143\150\145\143\153\142\165\164\164\157\156\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040" + "\173\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\100\141\143\143\145\156\164\137\143" + "\157\154\157\162\054\060\056\065\051\073\040\157\165\164\154\151" + "\156\145\055\167\151\144\164\150\072\040\062\160\170\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\055" + "\062\160\170\073\040\175\012\012\056\157\163\144\040\143\150\145" + "\143\153\142\165\164\164\157\156\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\040\173\040\157" + "\165\164\154\151\156\145\055\143\157\154\157\162\072\040\162\147" + "\142\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065" + "\054\040\060\056\065\051\073\040\175\012\012\143\150\145\143\153" + "\142\165\164\164\157\156\056\164\145\170\164\055\142\165\164\164" + "\157\156\040\173\040\160\141\144\144\151\156\147\072\040\064\160" + "\170\073\040\175\012\012\143\150\145\143\153\054\040\162\141\144" + "\151\157\040\173\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\061\064\160\170\073\040\155\151\156\055\167\151\144\164\150" + "\072\040\061\064\160\170\073\040\055\147\164\153\055\151\143\157" + "\156\055\163\151\172\145\072\040\061\064\160\170\073\040\160\141" + "\144\144\151\156\147\072\040\063\160\170\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\060\040\060\040\062\160\170\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\061\065\051" + "\073\040\175\012\012\143\150\145\143\153\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\072\151\156" + "\144\145\164\145\162\155\151\156\141\164\145\051\072\150\157\166" + "\145\162\054\040\162\141\144\151\157\072\156\157\164\050\072\143" + "\150\145\143\153\145\144\051\072\156\157\164\050\072\151\156\144" + "\145\164\145\162\155\151\156\141\164\145\051\072\150\157\166\145" + "\162\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\060\040\060\040\060\040\062\160\170\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\062\051\073\040\175\012\012\143\150\145\143" + "\153\072\156\157\164\050\072\143\150\145\143\153\145\144\051\072" + "\156\157\164\050\072\151\156\144\145\164\145\162\155\151\156\141" + "\164\145\051\072\141\143\164\151\166\145\054\040\162\141\144\151" + "\157\072\156\157\164\050\072\143\150\145\143\153\145\144\051\072" + "\156\157\164\050\072\151\156\144\145\164\145\162\155\151\156\141" + "\164\145\051\072\141\143\164\151\166\145\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\062\065\051\073\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\156\157\156\145\073\040\175\012\012\143\150" + "\145\143\153\072\143\150\145\143\153\145\144\054\040\143\150\145" + "\143\153\072\151\156\144\145\164\145\162\155\151\156\141\164\145" + "\054\040\162\141\144\151\157\072\143\150\145\143\153\145\144\054" + "\040\162\141\144\151\157\072\151\156\144\145\164\145\162\155\151" + "\156\141\164\145\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162" + "\072\040\100\141\143\143\145\156\164\137\146\147\137\143\157\154" + "\157\162\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\156\157\156\145\073\040\175\012\012\143\150\145\143\153\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\054\040\143\150" + "\145\143\153\072\151\156\144\145\164\145\162\155\151\156\141\164" + "\145\072\150\157\166\145\162\054\040\162\141\144\151\157\072\143" + "\150\145\143\153\145\144\072\150\157\166\145\162\054\040\162\141" + "\144\151\157\072\151\156\144\145\164\145\162\155\151\156\141\164" + "\145\072\150\157\166\145\162\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\151\155\141\147" + "\145\050\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\061\051\051\073\040\175\012\012\143" + "\150\145\143\153\072\143\150\145\143\153\145\144\072\141\143\164" + "\151\166\145\054\040\143\150\145\143\153\072\151\156\144\145\164" + "\145\162\155\151\156\141\164\145\072\141\143\164\151\166\145\054" + "\040\162\141\144\151\157\072\143\150\145\143\153\145\144\072\141" + "\143\164\151\166\145\054\040\162\141\144\151\157\072\151\156\144" + "\145\164\145\162\155\151\156\141\164\145\072\141\143\164\151\166" + "\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151" + "\155\141\147\145\072\040\151\155\141\147\145\050\162\147\142\141" + "\050\060\054\040\060\054\040\060\054\040\060\056\062\051\051\073" + "\040\175\012\012\143\150\145\143\153\072\144\151\163\141\142\154" + "\145\144\054\040\162\141\144\151\157\072\144\151\163\141\142\154" + "\145\144\040\173\040\146\151\154\164\145\162\072\040\157\160\141" + "\143\151\164\171\050\060\056\065\051\073\040\175\012\012\056\157" + "\163\144\040\143\150\145\143\153\072\143\150\145\143\153\145\144" + "\054\040\056\157\163\144\040\143\150\145\143\153\072\151\156\144" + "\145\164\145\162\155\151\156\141\164\145\054\040\056\157\163\144" + "\040\162\141\144\151\157\072\143\150\145\143\153\145\144\054\040" + "\056\157\163\144\040\162\141\144\151\157\072\151\156\144\145\164" + "\145\162\155\151\156\141\164\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\162\147\142" + "\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054" + "\040\060\056\067\065\051\073\040\143\157\154\157\162\072\040\162" + "\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056\067" + "\065\051\073\040\175\012\012\143\150\145\143\153\040\173\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066\160" + "\170\073\040\175\012\012\143\150\145\143\153\072\143\150\145\143" + "\153\145\144\040\173\040\055\147\164\153\055\151\143\157\156\055" + "\163\157\165\162\143\145\072\040\055\147\164\153\055\163\143\141" + "\154\145\144\050\055\147\164\153\055\162\145\143\157\154\157\162" + "\050\165\162\154\050\042\141\163\163\145\164\163\057\143\150\145" + "\143\153\055\163\171\155\142\157\154\151\143\056\163\171\155\142" + "\157\154\151\143\056\160\156\147\042\051\051\054\040\055\147\164" + "\153\055\162\145\143\157\154\157\162\050\165\162\154\050\042\141" + "\163\163\145\164\163\057\143\150\145\143\153\100\062\055\163\171" + "\155\142\157\154\151\143\056\163\171\155\142\157\154\151\143\056" + "\160\156\147\042\051\051\051\073\040\175\012\012\162\141\144\151" + "\157\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\061\060\060\045\073\040\175\012\012\162\141\144\151" + "\157\072\143\150\145\143\153\145\144\040\173\040\055\147\164\153" + "\055\151\143\157\156\055\163\157\165\162\143\145\072\040\055\147" + "\164\153\055\163\143\141\154\145\144\050\055\147\164\153\055\162" + "\145\143\157\154\157\162\050\165\162\154\050\042\141\163\163\145" + "\164\163\057\142\165\154\154\145\164\055\163\171\155\142\157\154" + "\151\143\056\163\171\155\142\157\154\151\143\056\160\156\147\042" + "\051\051\054\040\055\147\164\153\055\162\145\143\157\154\157\162" + "\050\165\162\154\050\042\141\163\163\145\164\163\057\142\165\154" + "\154\145\164\100\062\055\163\171\155\142\157\154\151\143\056\163" + "\171\155\142\157\154\151\143\056\160\156\147\042\051\051\051\073" + "\040\175\012\012\143\150\145\143\153\072\151\156\144\145\164\145" + "\162\155\151\156\141\164\145\054\040\162\141\144\151\157\072\151" + "\156\144\145\164\145\162\155\151\156\141\164\145\040\173\040\055" + "\147\164\153\055\151\143\157\156\055\163\157\165\162\143\145\072" + "\040\055\147\164\153\055\163\143\141\154\145\144\050\055\147\164" + "\153\055\162\145\143\157\154\157\162\050\165\162\154\050\042\141" + "\163\163\145\164\163\057\144\141\163\150\055\163\171\155\142\157" + "\154\151\143\056\163\171\155\142\157\154\151\143\056\160\156\147" + "\042\051\051\054\040\055\147\164\153\055\162\145\143\157\154\157" + "\162\050\165\162\154\050\042\141\163\163\145\164\163\057\144\141" + "\163\150\100\062\055\163\171\155\142\157\154\151\143\056\163\171" + "\155\142\157\154\151\143\056\160\156\147\042\051\051\051\073\040" + "\175\012\012\143\150\145\143\153\142\165\164\164\157\156\056\163" + "\145\154\145\143\164\151\157\156\055\155\157\144\145\040\173\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\061" + "\060\060\160\170\073\040\175\012\012\143\150\145\143\153\142\165" + "\164\164\157\156\056\163\145\154\145\143\164\151\157\156\055\155" + "\157\144\145\040\143\150\145\143\153\054\040\143\150\145\143\153" + "\142\165\164\164\157\156\056\163\145\154\145\143\164\151\157\156" + "\055\155\157\144\145\040\162\141\144\151\157\040\173\040\160\141" + "\144\144\151\156\147\072\040\067\160\170\073\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\061\060\060\160\170" + "\073\040\175\012\012\143\150\145\143\153\142\165\164\164\157\156" + "\056\163\145\154\145\143\164\151\157\156\055\155\157\144\145\040" + "\154\141\142\145\154\072\144\151\162\050\154\164\162\051\040\173" + "\040\155\141\162\147\151\156\055\162\151\147\150\164\072\040\066" + "\160\170\073\040\175\012\012\143\150\145\143\153\142\165\164\164" + "\157\156\056\163\145\154\145\143\164\151\157\156\055\155\157\144" + "\145\040\154\141\142\145\154\072\144\151\162\050\162\164\154\051" + "\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072\040" + "\066\160\170\073\040\175\012\012\143\157\154\157\162\163\167\141" + "\164\143\150\040\173\040\157\165\164\154\151\156\145\072\040\060" + "\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\066\160\170\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\073\040\175\012\012\143\157\154\157\162\163\167\141\164" + "\143\150\072\146\157\143\165\163\072\146\157\143\165\163\055\166" + "\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\054\060\056\065\051" + "\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072" + "\040\064\160\170\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\055\062\160\170\073\040\175\012\012\143" + "\157\154\157\162\163\167\141\164\143\150\056\164\157\160\040\173" + "\040\142\157\162\144\145\162\055\164\157\160\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\066\056\065\160\170\073\040" + "\142\157\162\144\145\162\055\164\157\160\055\162\151\147\150\164" + "\055\162\141\144\151\165\163\072\040\066\056\065\160\170\073\040" + "\175\012\012\143\157\154\157\162\163\167\141\164\143\150\056\164" + "\157\160\040\076\040\157\166\145\162\154\141\171\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\066\160\170\073\040\142\157\162\144" + "\145\162\055\164\157\160\055\162\151\147\150\164\055\162\141\144" + "\151\165\163\072\040\066\160\170\073\040\175\012\012\143\157\154" + "\157\162\163\167\141\164\143\150\056\142\157\164\164\157\155\040" + "\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\066\056\065" + "\160\170\073\040\142\157\162\144\145\162\055\142\157\164\164\157" + "\155\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040" + "\066\056\065\160\170\073\040\175\012\012\143\157\154\157\162\163" + "\167\141\164\143\150\056\142\157\164\164\157\155\040\076\040\157" + "\166\145\162\154\141\171\040\173\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\066\160\170\073\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144" + "\151\165\163\072\040\066\160\170\073\040\175\012\012\143\157\154" + "\157\162\163\167\141\164\143\150\056\154\145\146\164\054\040\143" + "\157\154\157\162\163\167\141\164\143\150\072\146\151\162\163\164" + "\055\143\150\151\154\144\072\156\157\164\050\056\164\157\160\051" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\066\056\065\160\170" + "\073\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\066\056\065" + "\160\170\073\040\175\012\012\143\157\154\157\162\163\167\141\164" + "\143\150\056\154\145\146\164\040\076\040\157\166\145\162\154\141" + "\171\054\040\143\157\154\157\162\163\167\141\164\143\150\072\146" + "\151\162\163\164\055\143\150\151\154\144\072\156\157\164\050\056" + "\164\157\160\051\040\076\040\157\166\145\162\154\141\171\040\173" + "\040\142\157\162\144\145\162\055\164\157\160\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\066\160\170\073\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\066\160\170\073\040\175\012" + "\012\143\157\154\157\162\163\167\141\164\143\150\056\162\151\147" + "\150\164\054\040\143\157\154\157\162\163\167\141\164\143\150\072" + "\154\141\163\164\055\143\150\151\154\144\072\156\157\164\050\056" + "\142\157\164\164\157\155\051\040\173\040\142\157\162\144\145\162" + "\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151\165" + "\163\072\040\066\056\065\160\170\073\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\066\056\065\160\170\073\040\175\012\012" + "\143\157\154\157\162\163\167\141\164\143\150\056\162\151\147\150" + "\164\040\076\040\157\166\145\162\154\141\171\054\040\143\157\154" + "\157\162\163\167\141\164\143\150\072\154\141\163\164\055\143\150" + "\151\154\144\072\156\157\164\050\056\142\157\164\164\157\155\051" + "\040\076\040\157\166\145\162\154\141\171\040\173\040\142\157\162" + "\144\145\162\055\164\157\160\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\066\160\170\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\066\160\170\073\040\175\012\012\143" + "\157\154\157\162\163\167\141\164\143\150\056\144\141\162\153\040" + "\076\040\157\166\145\162\154\141\171\040\173\040\143\157\154\157" + "\162\072\040\167\150\151\164\145\073\040\175\012\012\143\157\154" + "\157\162\163\167\141\164\143\150\056\154\151\147\150\164\040\076" + "\040\157\166\145\162\154\141\171\040\173\040\143\157\154\157\162" + "\072\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\067\065\051\073\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\060\040\060\040\060\040\061" + "\160\170\040\141\154\160\150\141\050\100\166\151\145\167\137\146" + "\147\137\143\157\154\157\162\054\060\056\061\051\073\040\175\012" + "\012\143\157\154\157\162\163\167\141\164\143\150\056\154\151\147" + "\150\164\072\144\162\157\160\050\141\143\164\151\166\145\051\040" + "\076\040\157\166\145\162\154\141\171\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\060\040\060\040\062\160\170\040\100\141\143\143\145\156\164\137" + "\142\147\137\143\157\154\157\162\073\040\175\012\012\143\157\154" + "\157\162\163\167\141\164\143\150\056\144\141\162\153\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\040\076\040\157\166\145" + "\162\154\141\171\040\173\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\060\040\060\040\060\040\062" + "\160\170\040\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\143\157\154\157\162\163\167\141" + "\164\143\150\043\141\144\144\055\143\157\154\157\162\055\142\165" + "\164\164\157\156\040\076\040\157\166\145\162\154\141\171\040\173" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\066\160\170\040\060\040\060\040\066\160\170\073\040\175\012\012" + "\143\157\154\157\162\163\167\141\164\143\150\043\141\144\144\055" + "\143\157\154\157\162\055\142\165\164\164\157\156\072\157\156\154" + "\171\055\143\150\151\154\144\040\076\040\157\166\145\162\154\141" + "\171\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\066\160\170\073\040\175\012\012\143\157\154\157\162" + "\163\167\141\164\143\150\072\144\151\163\141\142\154\145\144\040" + "\173\040\146\151\154\164\145\162\072\040\157\160\141\143\151\164" + "\171\050\060\056\065\051\073\040\175\012\012\143\157\154\157\162" + "\163\167\141\164\143\150\043\145\144\151\164\157\162\055\143\157" + "\154\157\162\055\163\141\155\160\154\145\040\173\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\066\160\170\073" + "\040\175\012\012\143\157\154\157\162\163\167\141\164\143\150\043" + "\145\144\151\164\157\162\055\143\157\154\157\162\055\163\141\155" + "\160\154\145\040\076\040\157\166\145\162\154\141\171\040\173\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066" + "\056\065\160\170\073\040\175\012\012\160\154\141\156\145\040\173" + "\040\157\165\164\154\151\156\145\072\040\060\040\163\157\154\151" + "\144\040\164\162\141\156\163\160\141\162\145\156\164\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\066" + "\160\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156" + "\145\055\167\151\144\164\150\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175" + "\012\012\160\154\141\156\145\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\040\173\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\100\141\143\143\145\156\164\137\143\157\154\157\162" + "\054\060\056\065\051\073\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\072\040\062\160\170\073\040\157\165\164\154\151" + "\156\145\055\157\146\146\163\145\164\072\040\062\160\170\073\040" + "\175\012\012\143\157\154\157\162\143\150\157\157\163\145\162\040" + "\056\160\157\160\157\166\145\162\056\157\163\144\040\173\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\061\062" + "\160\170\073\040\175\012\012\143\157\154\165\155\156\166\151\145" + "\167\054\040\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164" + "\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\040\173\040\157\165\164\154" + "\151\156\145\072\040\060\040\163\157\154\151\144\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\072\040\064\160\170\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\143\157\154" + "\165\155\156\166\151\145\167\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\054\040\164\162\145" + "\145\166\151\145\167\056\166\151\145\167\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145" + "\145\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\142\157\170\072\146\157\143\165\163\072\146\157" + "\143\165\163\055\166\151\163\151\142\154\145\040\173\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\100\141\143\143\145\156\164\137\143\157\154\157\162" + "\054\060\056\065\051\073\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\072\040\062\160\170\073\040\157\165\164\154\151" + "\156\145\055\157\146\146\163\145\164\072\040\055\062\160\170\073" + "\040\175\012\012\143\157\154\165\155\156\166\151\145\167\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\054\040\164\162\145" + "\145\166\151\145\167\056\166\151\145\167\072\144\162\157\160\050" + "\141\143\164\151\166\145\051\054\040\167\151\156\144\157\167\056" + "\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170" + "\072\144\162\157\160\050\141\143\164\151\166\145\051\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\156\157\156\145" + "\073\040\175\012\012\143\157\154\165\155\156\166\151\145\167\040" + "\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157" + "\156\054\040\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\076\040\150\145" + "\141\144\145\162\040\076\040\142\165\164\164\157\156\040\173\040" + "\160\141\144\144\151\156\147\055\164\157\160\072\040\063\160\170" + "\073\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155" + "\072\040\063\160\170\073\040\160\141\144\144\151\156\147\055\154" + "\145\146\164\072\040\066\160\170\073\040\160\141\144\144\151\156" + "\147\055\162\151\147\150\164\072\040\066\160\170\073\040\142\157" + "\162\144\145\162\055\162\141\144\151\165\163\072\040\060\073\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\156\157\156\145" + "\073\040\154\151\156\145\055\150\145\151\147\150\164\072\040\061" + "\060\060\045\073\040\142\157\162\144\145\162\055\154\145\146\164" + "\072\040\061\160\170\040\163\157\154\151\144\040\164\162\141\156" + "\163\160\141\162\145\156\164\073\040\175\012\012\143\157\154\165" + "\155\156\166\151\145\167\040\076\040\150\145\141\144\145\162\040" + "\076\040\142\165\164\164\157\156\072\146\151\162\163\164\055\143" + "\150\151\154\144\054\040\164\162\145\145\166\151\145\167\056\166" + "\151\145\167\040\076\040\150\145\141\144\145\162\040\076\040\142" + "\165\164\164\157\156\072\146\151\162\163\164\055\143\150\151\154" + "\144\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\040\076\040\150\145\141" + "\144\145\162\040\076\040\142\165\164\164\157\156\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\173\040\142\157\162\144\145" + "\162\055\154\145\146\164\055\167\151\144\164\150\072\040\060\073" + "\040\175\012\012\143\157\154\165\155\156\166\151\145\167\040\076" + "\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156" + "\040\076\040\142\157\170\054\040\164\162\145\145\166\151\145\167" + "\056\166\151\145\167\040\076\040\150\145\141\144\145\162\040\076" + "\040\142\165\164\164\157\156\040\076\040\142\157\170\054\040\167" + "\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145" + "\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\142\157\170\040\076\040\150\145\141\144\145\162\040" + "\076\040\142\165\164\164\157\156\040\076\040\142\157\170\040\173" + "\040\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\064\051\073" + "\040\146\157\156\164\055\167\145\151\147\150\164\072\040\067\060" + "\060\073\040\146\157\156\164\055\163\151\172\145\072\040\071\160" + "\164\073\040\142\157\162\144\145\162\055\163\160\141\143\151\156" + "\147\072\040\066\160\170\073\040\175\012\012\143\157\154\165\155" + "\156\166\151\145\167\040\076\040\150\145\141\144\145\162\040\076" + "\040\142\165\164\164\157\156\072\150\157\166\145\162\040\076\040" + "\142\157\170\054\040\164\162\145\145\166\151\145\167\056\166\151" + "\145\167\040\076\040\150\145\141\144\145\162\040\076\040\142\165" + "\164\164\157\156\072\150\157\166\145\162\040\076\040\142\157\170" + "\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164" + "\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\040\076\040\150\145\141\144" + "\145\162\040\076\040\142\165\164\164\157\156\072\150\157\166\145" + "\162\040\076\040\142\157\170\040\173\040\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\067\051\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\156\157\156\145\073\040\175\012\012\143" + "\157\154\165\155\156\166\151\145\167\040\076\040\150\145\141\144" + "\145\162\040\076\040\142\165\164\164\157\156\072\141\143\164\151" + "\166\145\040\076\040\142\157\170\054\040\164\162\145\145\166\151" + "\145\167\056\166\151\145\167\040\076\040\150\145\141\144\145\162" + "\040\076\040\142\165\164\164\157\156\072\141\143\164\151\166\145" + "\040\076\040\142\157\170\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040" + "\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157" + "\156\072\141\143\164\151\166\145\040\076\040\142\157\170\040\173" + "\040\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103" + "\157\154\157\162\073\040\175\012\012\143\157\154\165\155\156\166" + "\151\145\167\040\076\040\150\145\141\144\145\162\040\076\040\142" + "\165\164\164\157\156\040\163\157\162\164\055\151\156\144\151\143" + "\141\164\157\162\054\040\164\162\145\145\166\151\145\167\056\166" + "\151\145\167\040\076\040\150\145\141\144\145\162\040\076\040\142" + "\165\164\164\157\156\040\163\157\162\164\055\151\156\144\151\143" + "\141\164\157\162\054\040\167\151\156\144\157\167\056\160\162\151" + "\156\164\040\164\162\145\145\166\151\145\167\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040" + "\150\145\141\144\145\162\040\076\040\142\165\164\164\157\156\040" + "\163\157\162\164\055\151\156\144\151\143\141\164\157\162\040\173" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\061\066\160" + "\170\073\040\155\151\156\055\167\151\144\164\150\072\040\061\066" + "\160\170\073\040\175\012\012\143\157\154\165\155\156\166\151\145" + "\167\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164" + "\164\157\156\040\163\157\162\164\055\151\156\144\151\143\141\164" + "\157\162\056\141\163\143\145\156\144\151\156\147\054\040\164\162" + "\145\145\166\151\145\167\056\166\151\145\167\040\076\040\150\145" + "\141\144\145\162\040\076\040\142\165\164\164\157\156\040\163\157" + "\162\164\055\151\156\144\151\143\141\164\157\162\056\141\163\143" + "\145\156\144\151\156\147\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040" + "\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157" + "\156\040\163\157\162\164\055\151\156\144\151\143\141\164\157\162" + "\056\141\163\143\145\156\144\151\156\147\040\173\040\055\147\164" + "\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040\055" + "\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042\160" + "\141\156\055\165\160\055\163\171\155\142\157\154\151\143\042\051" + "\073\040\175\012\012\143\157\154\165\155\156\166\151\145\167\040" + "\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157" + "\156\040\163\157\162\164\055\151\156\144\151\143\141\164\157\162" + "\056\144\145\163\143\145\156\144\151\156\147\054\040\164\162\145" + "\145\166\151\145\167\056\166\151\145\167\040\076\040\150\145\141" + "\144\145\162\040\076\040\142\165\164\164\157\156\040\163\157\162" + "\164\055\151\156\144\151\143\141\164\157\162\056\144\145\163\143" + "\145\156\144\151\156\147\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040" + "\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164\157" + "\156\040\163\157\162\164\055\151\156\144\151\143\141\164\157\162" + "\056\144\145\163\143\145\156\144\151\156\147\040\173\040\055\147" + "\164\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040" + "\055\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042" + "\160\141\156\055\144\157\167\156\055\163\171\155\142\157\154\151" + "\143\042\051\073\040\175\012\012\143\157\154\165\155\156\166\151" + "\145\167\040\142\165\164\164\157\156\056\144\156\144\072\141\143" + "\164\151\166\145\054\040\143\157\154\165\155\156\166\151\145\167" + "\040\142\165\164\164\157\156\056\144\156\144\072\163\145\154\145" + "\143\164\145\144\054\040\143\157\154\165\155\156\166\151\145\167" + "\040\142\165\164\164\157\156\056\144\156\144\072\150\157\166\145" + "\162\054\040\143\157\154\165\155\156\166\151\145\167\040\142\165" + "\164\164\157\156\056\144\156\144\054\040\164\162\145\145\166\151" + "\145\167\056\166\151\145\167\040\142\165\164\164\157\156\056\144" + "\156\144\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\142\165\164\164" + "\157\156\056\144\156\144\054\040\143\157\154\165\155\156\166\151" + "\145\167\040\150\145\141\144\145\162\056\142\165\164\164\157\156" + "\056\144\156\144\072\141\143\164\151\166\145\054\040\143\157\154" + "\165\155\156\166\151\145\167\040\150\145\141\144\145\162\056\142" + "\165\164\164\157\156\056\144\156\144\072\163\145\154\145\143\164" + "\145\144\054\040\143\157\154\165\155\156\166\151\145\167\040\150" + "\145\141\144\145\162\056\142\165\164\164\157\156\056\144\156\144" + "\072\150\157\166\145\162\054\040\143\157\154\165\155\156\166\151" + "\145\167\040\150\145\141\144\145\162\056\142\165\164\164\157\156" + "\056\144\156\144\054\040\164\162\145\145\166\151\145\167\056\166" + "\151\145\167\040\150\145\141\144\145\162\056\142\165\164\164\157" + "\156\056\144\156\144\054\040\167\151\156\144\157\167\056\160\162" + "\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151\141" + "\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040\150" + "\145\141\144\145\162\056\142\165\164\164\157\156\056\144\156\144" + "\040\173\040\143\157\154\157\162\072\040\100\141\143\143\145\156" + "\164\137\146\147\137\143\157\154\157\162\073\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\156\157\156\145" + "\073\040\175\012\012\143\157\154\165\155\156\166\151\145\167\056" + "\166\151\145\167\040\076\040\154\151\163\164\166\151\145\167\056" + "\166\151\145\167\054\040\164\162\145\145\166\151\145\167\056\166" + "\151\145\167\040\076\040\154\151\163\164\166\151\145\167\056\166" + "\151\145\167\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\143\157\154\165\155\156\166\151\145\167\056\144\151\141" + "\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076" + "\040\154\151\163\164\166\151\145\167\056\166\151\145\167\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145" + "\145\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\142\157\170\040\076\040\154\151\163\164\166\151" + "\145\167\056\166\151\145\167\054\040\167\151\156\144\157\167\056" + "\160\162\151\156\164\040\143\157\154\165\155\156\166\151\145\167" + "\056\166\151\145\167\040\076\040\154\151\163\164\166\151\145\167" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142" + "\157\170\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\166\151\145\167\040\076" + "\040\154\151\163\164\166\151\145\167\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\143\157\154\165\155\156" + "\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\142\157\170\040\076\040\154\151\163\164\166\151\145" + "\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040\154" + "\151\163\164\166\151\145\167\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\156\157\156\145\073\040\143\157" + "\154\157\162\072\040\151\156\150\145\162\151\164\073\040\175\012" + "\012\143\157\154\165\155\156\166\151\145\167\040\076\040\154\151" + "\163\164\166\151\145\167\040\076\040\162\157\167\054\040\164\162" + "\145\145\166\151\145\167\056\166\151\145\167\040\076\040\154\151" + "\163\164\166\151\145\167\040\076\040\162\157\167\054\040\167\151" + "\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166" + "\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157" + "\156\055\142\157\170\040\076\040\154\151\163\164\166\151\145\167" + "\040\076\040\162\157\167\040\173\040\160\141\144\144\151\156\147" + "\072\040\060\073\040\175\012\012\143\157\154\165\155\156\166\151" + "\145\167\040\076\040\154\151\163\164\166\151\145\167\040\076\040" + "\162\157\167\040\076\040\143\145\154\154\054\040\164\162\145\145" + "\166\151\145\167\056\166\151\145\167\040\076\040\154\151\163\164" + "\166\151\145\167\040\076\040\162\157\167\040\076\040\143\145\154" + "\154\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\040\076\040\154\151\163" + "\164\166\151\145\167\040\076\040\162\157\167\040\076\040\143\145" + "\154\154\040\173\040\160\141\144\144\151\156\147\072\040\070\160" + "\170\040\066\160\170\073\040\175\012\012\143\157\154\165\155\156" + "\166\151\145\167\040\076\040\154\151\163\164\166\151\145\167\040" + "\076\040\162\157\167\040\076\040\143\145\154\154\072\156\157\164" + "\050\072\146\151\162\163\164\055\143\150\151\154\144\051\054\040" + "\164\162\145\145\166\151\145\167\056\166\151\145\167\040\076\040" + "\154\151\163\164\166\151\145\167\040\076\040\162\157\167\040\076" + "\040\143\145\154\154\072\156\157\164\050\072\146\151\162\163\164" + "\055\143\150\151\154\144\051\054\040\167\151\156\144\157\167\056" + "\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170" + "\040\076\040\154\151\163\164\166\151\145\167\040\076\040\162\157" + "\167\040\076\040\143\145\154\154\072\156\157\164\050\072\146\151" + "\162\163\164\055\143\150\151\154\144\051\040\173\040\142\157\162" + "\144\145\162\055\154\145\146\164\072\040\061\160\170\040\163\157" + "\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\175\012\012\143\157\154\165\155\156\166\151\145\167\056\143" + "\157\154\165\155\156\055\163\145\160\141\162\141\164\157\162\163" + "\040\076\040\154\151\163\164\166\151\145\167\040\076\040\162\157" + "\167\040\076\040\143\145\154\154\054\040\164\162\145\145\166\151" + "\145\167\056\143\157\154\165\155\156\055\163\145\160\141\162\141" + "\164\157\162\163\056\166\151\145\167\040\076\040\154\151\163\164" + "\166\151\145\167\040\076\040\162\157\167\040\076\040\143\145\154" + "\154\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\164\162\145\145\166\151\145\167\056\143\157\154\165\155\156\055" + "\163\145\160\141\162\141\164\157\162\163\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040\154" + "\151\163\164\166\151\145\167\040\076\040\162\157\167\040\076\040" + "\143\145\154\154\054\040\143\157\154\165\155\156\166\151\145\167" + "\056\143\157\154\165\155\156\055\163\145\160\141\162\141\164\157" + "\162\163\040\076\040\150\145\141\144\145\162\040\076\040\142\165" + "\164\164\157\156\054\040\164\162\145\145\166\151\145\167\056\143" + "\157\154\165\155\156\055\163\145\160\141\162\141\164\157\162\163" + "\056\166\151\145\167\040\076\040\150\145\141\144\145\162\040\076" + "\040\142\165\164\164\157\156\054\040\167\151\156\144\157\167\056" + "\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056\143" + "\157\154\165\155\156\055\163\145\160\141\162\141\164\157\162\163" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142" + "\157\170\040\076\040\150\145\141\144\145\162\040\076\040\142\165" + "\164\164\157\156\040\173\040\142\157\162\144\145\162\055\154\145" + "\146\164\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061" + "\065\051\073\040\175\012\012\143\157\154\165\155\156\166\151\145" + "\167\040\076\040\154\151\163\164\166\151\145\167\056\163\145\160" + "\141\162\141\164\157\162\163\072\156\157\164\050\056\150\157\162" + "\151\172\157\156\164\141\154\051\040\076\040\162\157\167\072\156" + "\157\164\050\056\163\145\160\141\162\141\164\157\162\051\054\040" + "\164\162\145\145\166\151\145\167\056\166\151\145\167\040\076\040" + "\154\151\163\164\166\151\145\167\056\163\145\160\141\162\141\164" + "\157\162\163\072\156\157\164\050\056\150\157\162\151\172\157\156" + "\164\141\154\051\040\076\040\162\157\167\072\156\157\164\050\056" + "\163\145\160\141\162\141\164\157\162\051\054\040\167\151\156\144" + "\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145" + "\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\040\076\040\154\151\163\164\166\151\145\167\056\163" + "\145\160\141\162\141\164\157\162\163\072\156\157\164\050\056\150" + "\157\162\151\172\157\156\164\141\154\051\040\076\040\162\157\167" + "\072\156\157\164\050\056\163\145\160\141\162\141\164\157\162\051" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\072\040\061" + "\160\170\040\163\157\154\151\144\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061\065" + "\051\073\040\142\157\162\144\145\162\055\142\157\164\164\157\155" + "\072\040\156\157\156\145\073\040\175\012\012\143\157\154\165\155" + "\156\166\151\145\167\056\144\141\164\141\055\164\141\142\154\145" + "\040\076\040\154\151\163\164\166\151\145\167\040\076\040\162\157" + "\167\040\076\040\143\145\154\154\054\040\164\162\145\145\166\151" + "\145\167\056\144\141\164\141\055\164\141\142\154\145\056\166\151" + "\145\167\040\076\040\154\151\163\164\166\151\145\167\040\076\040" + "\162\157\167\040\076\040\143\145\154\154\054\040\167\151\156\144" + "\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145" + "\167\056\144\141\164\141\055\164\141\142\154\145\056\144\151\141" + "\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076" + "\040\154\151\163\164\166\151\145\167\040\076\040\162\157\167\040" + "\076\040\143\145\154\154\040\173\040\160\141\144\144\151\156\147" + "\055\164\157\160\072\040\062\160\170\073\040\160\141\144\144\151" + "\156\147\055\142\157\164\164\157\155\072\040\062\160\170\073\040" + "\175\012\012\143\157\154\165\155\156\166\151\145\167\040\176\040" + "\165\156\144\145\162\163\150\157\157\164\056\164\157\160\054\040" + "\164\162\145\145\166\151\145\167\056\166\151\145\167\040\176\040" + "\165\156\144\145\162\163\150\157\157\164\056\164\157\160\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145" + "\145\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\142\157\170\040\176\040\165\156\144\145\162\163" + "\150\157\157\164\056\164\157\160\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040\061" + "\160\170\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\067\065\051\073\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\164\157\040\142\157\164\164" + "\157\155\054\040\141\154\160\150\141\050\100\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162" + "\141\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040" + "\175\012\012\143\157\154\165\155\156\166\151\145\167\040\162\157" + "\167\072\156\157\164\050\072\163\145\154\145\143\164\145\144\051" + "\040\143\145\154\154\040\145\144\151\164\141\142\154\145\154\141" + "\142\145\154\072\156\157\164\050\056\145\144\151\164\151\156\147" + "\051\072\146\157\143\165\163\055\167\151\164\150\151\156\054\040" + "\164\162\145\145\166\151\145\167\056\166\151\145\167\040\162\157" + "\167\072\156\157\164\050\072\163\145\154\145\143\164\145\144\051" + "\040\143\145\154\154\040\145\144\151\164\141\142\154\145\154\141" + "\142\145\154\072\156\157\164\050\056\145\144\151\164\151\156\147" + "\051\072\146\157\143\165\163\055\167\151\164\150\151\156\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145" + "\145\166\151\145\167\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\142\157\170\040\162\157\167\072\156\157\164\050" + "\072\163\145\154\145\143\164\145\144\051\040\143\145\154\154\040" + "\145\144\151\164\141\142\154\145\154\141\142\145\154\072\156\157" + "\164\050\056\145\144\151\164\151\156\147\051\072\146\157\143\165" + "\163\055\167\151\164\150\151\156\040\173\040\157\165\164\154\151" + "\156\145\072\040\062\160\170\040\163\157\154\151\144\040\141\154" + "\160\150\141\050\100\141\143\143\145\156\164\137\143\157\154\157" + "\162\054\060\056\065\051\073\040\175\012\012\143\157\154\165\155" + "\156\166\151\145\167\040\162\157\167\072\156\157\164\050\072\163" + "\145\154\145\143\164\145\144\051\040\143\145\154\154\040\145\144" + "\151\164\141\142\154\145\154\141\142\145\154\056\145\144\151\164" + "\151\156\147\072\146\157\143\165\163\055\167\151\164\150\151\156" + "\054\040\164\162\145\145\166\151\145\167\056\166\151\145\167\040" + "\162\157\167\072\156\157\164\050\072\163\145\154\145\143\164\145" + "\144\051\040\143\145\154\154\040\145\144\151\164\141\142\154\145" + "\154\141\142\145\154\056\145\144\151\164\151\156\147\072\146\157" + "\143\165\163\055\167\151\164\150\151\156\054\040\167\151\156\144" + "\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145" + "\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\040\162\157\167\072\156\157\164\050\072\163\145\154" + "\145\143\164\145\144\051\040\143\145\154\154\040\145\144\151\164" + "\141\142\154\145\154\141\142\145\154\056\145\144\151\164\151\156" + "\147\072\146\157\143\165\163\055\167\151\164\150\151\156\040\173" + "\040\157\165\164\154\151\156\145\072\040\062\160\170\040\163\157" + "\154\151\144\040\100\141\143\143\145\156\164\137\143\157\154\157" + "\162\073\040\175\012\012\164\162\145\145\145\170\160\141\156\144" + "\145\162\040\173\040\142\157\162\144\145\162\055\163\160\141\143" + "\151\156\147\072\040\064\160\170\073\040\175\012\012\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\141\162\145\141" + "\040\173\040\155\141\162\147\151\156\072\040\066\160\170\073\040" + "\142\157\162\144\145\162\055\163\160\141\143\151\156\147\072\040" + "\066\160\170\073\040\175\012\012\057\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\040\120\162\151\156\164\040" + "\144\151\141\154\157\147\040\052\040\052\057\012\167\151\156\144" + "\157\167\056\160\162\151\156\164\040\144\162\141\167\151\156\147" + "\040\173\040\143\157\154\157\162\072\040\100\167\151\156\144\157" + "\167\137\146\147\137\143\157\154\157\162\073\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\156\157\156\145\073\040\142\157" + "\162\144\145\162\072\040\156\157\156\145\073\040\160\141\144\144" + "\151\156\147\072\040\060\073\040\175\012\012\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\144\162\141\167\151\156\147\040" + "\160\141\160\145\162\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\167\150\151\164\145\073" + "\040\143\157\154\157\162\072\040\162\147\142\141\050\060\054\040" + "\060\054\040\060\054\040\060\056\070\051\073\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\154\151\160\072\040\160\141\144" + "\144\151\156\147\055\142\157\170\073\040\142\157\162\144\145\162" + "\072\040\061\160\170\040\163\157\154\151\144\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\065\051\073\040\175\012\012\057\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040\120" + "\141\147\145\040\163\145\164\165\160\040\144\141\154\157\147\040" + "\052\040\052\057\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\040\107\164\153\101\142\157\165" + "\164\104\151\141\154\157\147\040\052\040\052\057\012\167\151\156" + "\144\157\167\056\141\142\157\165\164\144\151\141\154\157\147\040" + "\151\155\141\147\145\056\154\141\162\147\145\055\151\143\157\156" + "\163\040\173\040\055\147\164\153\055\151\143\157\156\055\163\151" + "\172\145\072\040\061\062\070\160\170\073\040\175\012\012\057\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\040\107\164\153\103\157\154\157" + "\162\103\150\157\157\163\145\162\104\151\141\154\157\147\040\052" + "\040\052\057\012\057\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\040\101\144\167\104\151\141\154\157\147\040\052\040\052" + "\057\012\146\154\157\141\164\151\156\147\055\163\150\145\145\164" + "\040\076\040\144\151\155\155\151\156\147\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\100\163\150\141\144\145\137\143\157\154\157" + "\162\054\062\051\073\040\175\012\012\146\154\157\141\164\151\156" + "\147\055\163\150\145\145\164\040\076\040\163\150\145\145\164\040" + "\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072" + "\040\061\062\160\170\073\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\060\040\062\160\170\040\070\160\170\040\062\160\170" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\060\067\051\054\040\060\040\063\160\170\040\062\060\160\170" + "\040\061\060\160\170\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\060\065\051\054\040\060\040\066\160\170" + "\040\063\062\160\170\040\061\066\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\060\062\051\054\040" + "\060\040\060\040\060\040\061\160\170\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\060\065\051\073\040\157" + "\165\164\154\151\156\145\072\040\061\160\170\040\163\157\154\151" + "\144\040\162\147\142\141\050\062\065\065\054\040\062\065\065\054" + "\040\062\065\065\054\040\060\056\060\067\051\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\055\061\160" + "\170\073\040\175\012\012\144\151\141\154\157\147\056\142\157\164" + "\164\157\155\055\163\150\145\145\164\056\154\141\156\144\163\143" + "\141\160\145\040\163\150\145\145\164\040\173\040\155\141\162\147" + "\151\156\055\154\145\146\164\072\040\063\060\160\170\073\040\155" + "\141\162\147\151\156\055\162\151\147\150\164\072\040\063\060\160" + "\170\073\040\175\012\012\144\151\141\154\157\147\056\142\157\164" + "\164\157\155\055\163\150\145\145\164\056\154\141\156\144\163\143" + "\141\160\145\040\163\150\145\145\164\040\076\040\157\165\164\154" + "\151\156\145\056\146\154\165\163\150\055\154\145\146\164\054\040" + "\144\151\141\154\157\147\056\142\157\164\164\157\155\055\163\150" + "\145\145\164\056\154\141\156\144\163\143\141\160\145\040\163\150" + "\145\145\164\040\076\040\157\165\164\154\151\156\145\056\146\154" + "\165\163\150\055\162\151\147\150\164\054\040\144\151\141\154\157" + "\147\056\142\157\164\164\157\155\055\163\150\145\145\164\056\154" + "\141\156\144\163\143\141\160\145\040\163\150\145\145\164\040\076" + "\040\157\165\164\154\151\156\145\056\146\154\165\163\150\055\154" + "\145\146\164\056\146\154\165\163\150\055\162\151\147\150\164\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\061\160\170\040\060\040\162\147\142\141\050\062" + "\065\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056" + "\060\067\051\054\040\151\156\163\145\164\040\055\061\160\170\040" + "\060\040\162\147\142\141\050\062\065\065\054\040\062\065\065\054" + "\040\062\065\065\054\040\060\056\060\067\051\054\040\151\156\163" + "\145\164\040\060\040\061\160\170\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\060" + "\067\051\073\040\175\012\012\144\151\141\154\157\147\055\150\157" + "\163\164\040\076\040\144\151\141\154\157\147\056\142\141\143\153" + "\147\162\157\165\156\144\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\156\157\156\145\073\040\175\012\012\144\151" + "\141\154\157\147\055\150\157\163\164\040\076\040\144\151\141\154" + "\157\147\056\142\141\143\153\147\162\157\165\156\144\040\163\150" + "\145\145\164\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\167\151\156\144\157\167\137" + "\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162\072" + "\040\100\167\151\156\144\157\167\137\146\147\137\143\157\154\157" + "\162\073\040\175\012\012\144\151\141\154\157\147\055\150\157\163" + "\164\040\076\040\144\151\141\154\157\147\056\166\151\145\167\054" + "\040\167\151\156\144\157\167\056\160\162\151\156\164\040\144\151" + "\141\154\157\147\055\150\157\163\164\040\076\040\144\151\141\154" + "\157\147\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\142\157\170\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\072\040\156\157\156\145\073\040\175\012\012\144\151\141\154" + "\157\147\055\150\157\163\164\040\076\040\144\151\141\154\157\147" + "\056\157\163\144\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\072\040\156\157\156\145\073\040\175\012\012\057\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\040\107\164\153\101\160\160\103\150\157\157\163" + "\145\162\104\151\141\154\157\147\040\052\040\052\057\012\167\151" + "\156\144\157\167\056\141\160\160\143\150\157\157\163\145\162\040" + "\150\145\141\144\145\162\142\141\162\056\164\151\164\154\145\142" + "\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144\154" + "\145\040\173\040\160\141\144\144\151\156\147\055\164\157\160\072" + "\040\063\160\170\073\040\175\012\012\167\151\156\144\157\167\056" + "\141\160\160\143\150\157\157\163\145\162\040\150\145\141\144\145" + "\162\142\141\162\056\164\151\164\154\145\142\141\162\040\142\157" + "\170\056\163\164\141\162\164\040\053\040\142\157\170\040\173\040" + "\155\141\162\147\151\156\055\164\157\160\072\040\055\066\160\170" + "\073\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072" + "\040\055\066\160\170\073\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\061\062\160\170\073\040\175\012\012\167\151\156\144" + "\157\167\056\141\160\160\143\150\157\157\163\145\162\040\163\145" + "\141\162\143\150\142\141\162\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\156\157\156\145\073\040\175\012\012\167" + "\151\156\144\157\167\056\141\160\160\143\150\157\157\163\145\162" + "\040\056\144\151\141\154\157\147\055\166\142\157\170\040\076\040" + "\142\157\170\040\076\040\142\157\170\072\156\157\164\050\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\141\162\145" + "\141\051\040\173\040\155\141\162\147\151\156\072\040\066\160\170" + "\073\040\175\012\012\167\151\156\144\157\167\056\141\160\160\143" + "\150\157\157\163\145\162\040\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\141\162\145\141\040\173\040\155\141\162" + "\147\151\156\055\164\157\160\072\040\060\073\040\175\012\012\057" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\040\107\164\153\101\163\163\151\163\164\141\156\164\040\052\040" + "\052\057\012\167\151\156\144\157\167\056\141\163\163\151\163\164" + "\141\156\164\040\056\163\151\144\145\142\141\162\040\173\040\160" + "\141\144\144\151\156\147\072\040\066\160\170\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\163\151\144\145\142\141\162\137\142\147\137\143\157\154\157\162" + "\073\040\143\157\154\157\162\072\040\100\163\151\144\145\142\141" + "\162\137\146\147\137\143\157\154\157\162\073\040\175\012\012\167" + "\151\156\144\157\167\056\141\163\163\151\163\164\141\156\164\040" + "\056\163\151\144\145\142\141\162\072\156\157\164\050\163\145\160" + "\141\162\141\164\157\162\051\072\144\151\162\050\154\164\162\051" + "\040\173\040\142\157\162\144\145\162\055\162\151\147\150\164\072" + "\040\156\157\156\145\073\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\055\061\160\170\040\060\040" + "\100\163\151\144\145\142\141\162\137\142\157\162\144\145\162\137" + "\143\157\154\157\162\073\040\175\012\012\167\151\156\144\157\167" + "\056\141\163\163\151\163\164\141\156\164\040\056\163\151\144\145" + "\142\141\162\072\156\157\164\050\163\145\160\141\162\141\164\157" + "\162\051\072\144\151\162\050\162\164\154\051\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\061\160\170\040\060\040\100\163\151\144\145\142\141\162\137\142" + "\157\162\144\145\162\137\143\157\154\157\162\073\040\175\012\012" + "\167\151\156\144\157\167\056\141\163\163\151\163\164\141\156\164" + "\040\056\163\151\144\145\142\141\162\072\142\141\143\153\144\162" + "\157\160\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\100\163\151\144\145\142\141\162\137" + "\142\141\143\153\144\162\157\160\137\143\157\154\157\162\073\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\040\062\060\060" + "\155\163\040\145\141\163\145\055\157\165\164\073\040\175\012\012" + "\167\151\156\144\157\167\056\141\163\163\151\163\164\141\156\164" + "\040\056\163\151\144\145\142\141\162\040\076\040\154\141\142\145" + "\154\040\173\040\160\141\144\144\151\156\147\072\040\066\160\170" + "\040\061\062\160\170\073\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\066\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\056\141\163\163\151\163\164\141\156\164\040\056" + "\163\151\144\145\142\141\162\040\076\040\154\141\142\145\154\056" + "\150\151\147\150\154\151\147\150\164\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\051\073\040\175\012\012\057\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\040\107\164\153\103\157" + "\155\142\157\102\157\170\040\052\040\052\057\012\143\157\155\142" + "\157\142\157\170\040\142\165\164\164\157\156\040\173\040\160\141" + "\144\144\151\156\147\055\164\157\160\072\040\062\160\170\073\040" + "\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040" + "\062\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\063\060\160\170\073\040\175\012\012\057\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\040\107\164\153\111\143" + "\157\156\126\151\145\167\040\052\040\052\057\012\151\143\157\156" + "\166\151\145\167\040\173\040\157\165\164\154\151\156\145\072\040" + "\060\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\072\040\064\160\170\073\040\164\162\141\156\163\151" + "\164\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040" + "\157\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\073\040\175\012\012\151\143\157\156\166\151\145\167" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\040\173\040\157\165\164\154\151\156\145\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143" + "\145\156\164\137\143\157\154\157\162\054\060\056\065\051\073\040" + "\157\165\164\154\151\156\145\055\167\151\144\164\150\072\040\062" + "\160\170\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\055\062\160\170\073\040\175\012\012\151\143\157" + "\156\166\151\145\167\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\175\012\012\151\143\157\156\166\151" + "\145\167\040\076\040\144\156\144\164\141\162\147\145\164\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\040\173\040\142\157" + "\162\144\145\162\055\163\164\171\154\145\072\040\163\157\154\151" + "\144\073\040\142\157\162\144\145\162\055\167\151\144\164\150\072" + "\040\061\160\170\073\040\142\157\162\144\145\162\055\143\157\154" + "\157\162\072\040\100\141\143\143\145\156\164\137\142\147\137\143" + "\157\154\157\162\073\040\175\012\012\057\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\040\107\164\153\111\156\146\157" + "\102\141\162\040\052\040\052\057\012\151\156\146\157\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\173\040\160\141\144\144\151\156\147\072\040\066\160\170" + "\073\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155" + "\072\040\067\160\170\073\040\142\157\162\144\145\162\055\163\160" + "\141\143\151\156\147\072\040\066\160\170\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\055\061\160\170\040\100\163\150\141\144\145\137\143\157\154\157" + "\162\073\040\175\012\012\151\156\146\157\142\141\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040\076" + "\040\142\157\170\040\173\040\142\157\162\144\145\162\055\163\160" + "\141\143\151\156\147\072\040\066\160\170\073\040\175\012\012\151" + "\156\146\157\142\141\162\056\141\143\164\151\157\156\072\150\157" + "\166\145\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\151\155\141\147\145\072\040\151\155\141\147\145\050\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\060\065\051\051\073\040\175\012\012\151\156\146" + "\157\142\141\162\056\141\143\164\151\157\156\072\141\143\164\151" + "\166\145\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\151\155\141\147\145\072\040\151\155\141\147\145\050\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\051\051\073\040\175\012\012\151\156\146\157\142" + "\141\162\056\151\156\146\157\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\155\151\170" + "\050\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\054\100\167\151\156\144\157\167\137\142\147\137\143\157\154" + "\157\162\054\060\056\067\051\073\040\143\157\154\157\162\072\040" + "\100\167\151\156\144\157\167\137\146\147\137\143\157\154\157\162" + "\073\040\175\012\012\151\156\146\157\142\141\162\056\161\165\145" + "\163\164\151\157\156\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\155\151\170\050\100" + "\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162\054" + "\100\167\151\156\144\157\167\137\142\147\137\143\157\154\157\162" + "\054\060\056\067\051\073\040\143\157\154\157\162\072\040\100\167" + "\151\156\144\157\167\137\146\147\137\143\157\154\157\162\073\040" + "\175\012\012\151\156\146\157\142\141\162\056\167\141\162\156\151" + "\156\147\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\155\151\170\050\100\167\141\162" + "\156\151\156\147\137\142\147\137\143\157\154\157\162\054\100\167" + "\151\156\144\157\167\137\142\147\137\143\157\154\157\162\054\060" + "\056\067\051\073\040\143\157\154\157\162\072\040\100\167\151\156" + "\144\157\167\137\146\147\137\143\157\154\157\162\073\040\175\012" + "\012\151\156\146\157\142\141\162\056\145\162\162\157\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\155\151\170\050\100\145\162\162\157\162\137\142" + "\147\137\143\157\154\157\162\054\100\167\151\156\144\157\167\137" + "\142\147\137\143\157\154\157\162\054\060\056\067\051\073\040\143" + "\157\154\157\162\072\040\100\167\151\156\144\157\167\137\146\147" + "\137\143\157\154\157\162\073\040\175\012\012\151\156\146\157\142" + "\141\162\040\056\143\154\157\163\145\040\173\040\155\151\156\055" + "\167\151\144\164\150\072\040\061\070\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\061\070\160\170\073\040\160" + "\141\144\144\151\156\147\072\040\064\160\170\073\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\065\060\045\073" + "\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\040\107\164\153\123\164\141\164\165\163\102" + "\141\162\040\052\040\052\057\012\163\164\141\164\165\163\142\141" + "\162\040\173\040\160\141\144\144\151\156\147\072\040\066\160\170" + "\040\061\060\160\170\040\066\160\170\040\061\060\160\170\073\040" + "\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\040\107\164\153\124\162\145\145\126\151\145\167\040" + "\052\040\052\057\012\164\162\145\145\166\151\145\167\056\166\151" + "\145\167\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\173\040\142\157" + "\162\144\145\162\055\154\145\146\164\055\143\157\154\157\162\072" + "\040\155\151\170\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\100\166\151\145\167\137\142\147\137\143\157\154\157\162" + "\054\060\056\070\051\073\040\142\157\162\144\145\162\055\164\157" + "\160\055\143\157\154\157\162\072\040\155\151\170\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\100\166\151\145\167\137" + "\142\147\137\143\157\154\157\162\054\060\056\070\051\073\040\175" + "\012\012\164\162\145\145\166\151\145\167\056\166\151\145\167\072" + "\163\145\154\145\143\164\145\144\072\146\157\143\165\163\054\040" + "\164\162\145\145\166\151\145\167\056\166\151\145\167\072\163\145" + "\154\145\143\164\145\144\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170\072" + "\163\145\154\145\143\164\145\144\040\173\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\060\073\040\175\012\012" + "\164\162\145\145\166\151\145\167\056\166\151\145\167\056\163\145" + "\160\141\162\141\164\157\162\054\040\167\151\156\144\157\167\056" + "\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056\163" + "\145\160\141\162\141\164\157\162\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\040\173\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\062\160\170\073\040\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\065\051\073\040\175" + "\012\012\164\162\145\145\166\151\145\167\056\166\151\145\167\056" + "\145\170\160\141\156\144\145\162\054\040\167\151\156\144\157\167" + "\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056" + "\145\170\160\141\156\144\145\162\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\040\173\040\155\151\156" + "\055\167\151\144\164\150\072\040\061\066\160\170\073\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\061\066\160\170\073\040" + "\055\147\164\153\055\151\143\157\156\055\163\157\165\162\143\145" + "\072\040\055\147\164\153\055\151\143\157\156\164\150\145\155\145" + "\050\042\160\141\156\055\145\156\144\055\163\171\155\142\157\154" + "\151\143\042\051\073\040\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\067\051\073\040\175\012\012\164\162\145\145\166\151\145" + "\167\056\166\151\145\167\056\145\170\160\141\156\144\145\162\072" + "\144\151\162\050\162\164\154\051\054\040\167\151\156\144\157\167" + "\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056" + "\145\170\160\141\156\144\145\162\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\072\144\151\162\050\162" + "\164\154\051\040\173\040\055\147\164\153\055\151\143\157\156\055" + "\163\157\165\162\143\145\072\040\055\147\164\153\055\151\143\157" + "\156\164\150\145\155\145\050\042\160\141\156\055\145\156\144\055" + "\163\171\155\142\157\154\151\143\055\162\164\154\042\051\073\040" + "\175\012\012\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\056\145\170\160\141\156\144\145\162\072\150\157\166\145\162\054" + "\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164\162" + "\145\145\166\151\145\167\056\145\170\160\141\156\144\145\162\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\072\150\157\166\145\162\054\040\164\162\145\145\166\151\145" + "\167\056\166\151\145\167\056\145\170\160\141\156\144\145\162\072" + "\141\143\164\151\166\145\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\145\170" + "\160\141\156\144\145\162\056\144\151\141\154\157\147\055\141\143" + "\164\151\157\156\055\142\157\170\072\141\143\164\151\166\145\040" + "\173\040\143\157\154\157\162\072\040\143\165\162\162\145\156\164" + "\103\157\154\157\162\073\040\175\012\012\164\162\145\145\166\151" + "\145\167\056\166\151\145\167\056\145\170\160\141\156\144\145\162" + "\072\143\150\145\143\153\145\144\054\040\167\151\156\144\157\167" + "\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167\056" + "\145\170\160\141\156\144\145\162\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\072\143\150\145\143\153" + "\145\144\040\173\040\055\147\164\153\055\151\143\157\156\055\163" + "\157\165\162\143\145\072\040\055\147\164\153\055\151\143\157\156" + "\164\150\145\155\145\050\042\160\141\156\055\144\157\167\156\055" + "\163\171\155\142\157\154\151\143\042\051\073\040\175\012\012\164" + "\162\145\145\166\151\145\167\056\166\151\145\167\056\145\170\160" + "\141\156\144\145\162\072\144\151\163\141\142\154\145\144\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\164\162\145" + "\145\166\151\145\167\056\145\170\160\141\156\144\145\162\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170" + "\072\144\151\163\141\142\154\145\144\040\173\040\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\175\012\012\164" + "\162\145\145\166\151\145\167\056\166\151\145\167\040\076\040\144" + "\156\144\164\141\162\147\145\164\072\144\162\157\160\050\141\143" + "\164\151\166\145\051\054\040\167\151\156\144\157\167\056\160\162" + "\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151\141" + "\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076" + "\040\144\156\144\164\141\162\147\145\164\072\144\162\157\160\050" + "\141\143\164\151\166\145\051\040\173\040\142\157\162\144\145\162" + "\055\163\164\171\154\145\072\040\163\157\154\151\144\040\156\157" + "\156\145\073\040\142\157\162\144\145\162\055\167\151\144\164\150" + "\072\040\061\160\170\073\040\142\157\162\144\145\162\055\143\157" + "\154\157\162\072\040\100\141\143\143\145\156\164\137\142\147\137" + "\143\157\154\157\162\073\040\175\012\012\164\162\145\145\166\151" + "\145\167\056\166\151\145\167\040\076\040\144\156\144\164\141\162" + "\147\145\164\056\141\146\164\145\162\072\144\162\157\160\050\141" + "\143\164\151\166\145\051\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040" + "\076\040\144\156\144\164\141\162\147\145\164\056\141\146\164\145" + "\162\072\144\162\157\160\050\141\143\164\151\166\145\051\040\173" + "\040\142\157\162\144\145\162\055\164\157\160\055\163\164\171\154" + "\145\072\040\156\157\156\145\073\040\175\012\012\164\162\145\145" + "\166\151\145\167\056\166\151\145\167\040\076\040\144\156\144\164" + "\141\162\147\145\164\056\142\145\146\157\162\145\072\144\162\157" + "\160\050\141\143\164\151\166\145\051\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145\167" + "\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142" + "\157\170\040\076\040\144\156\144\164\141\162\147\145\164\056\142" + "\145\146\157\162\145\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\040\173\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\163\164\171\154\145\072\040\156\157\156\145\073\040" + "\175\012\012\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\040\076\040\150\145\141\144\145\162\040\076\040\142\165\164\164" + "\157\156\054\040\167\151\156\144\157\167\056\160\162\151\156\164" + "\040\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\076\040\150\145" + "\141\144\145\162\040\076\040\142\165\164\164\157\156\040\173\040" + "\160\141\144\144\151\156\147\055\154\145\146\164\072\040\064\160" + "\170\073\040\160\141\144\144\151\156\147\055\162\151\147\150\164" + "\072\040\064\160\170\073\040\142\157\162\144\145\162\055\142\157" + "\164\164\157\155\072\040\061\160\170\040\163\157\154\151\144\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\061\065\051\073\040\175\012\012\164\162\145" + "\145\166\151\145\167\056\166\151\145\167\056\160\162\157\147\162" + "\145\163\163\142\141\162\054\040\167\151\156\144\157\167\056\160" + "\162\151\156\164\040\164\162\145\145\166\151\145\167\056\160\162" + "\157\147\162\145\163\163\142\141\162\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\142\157\170\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\156\157\156\145\073\040" + "\175\012\012\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\056\160\162\157\147\162\145\163\163\142\141\162\054\040\167\151" + "\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166" + "\151\145\167\056\160\162\157\147\162\145\163\163\142\141\162\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\054\040\164\162\145\145\166\151\145\167\056\166\151\145\167" + "\056\160\162\157\147\162\145\163\163\142\141\162\072\163\145\154" + "\145\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157" + "\162\072\040\100\141\143\143\145\156\164\137\146\147\137\143\157" + "\154\157\162\073\040\175\012\012\164\162\145\145\166\151\145\167" + "\056\166\151\145\167\056\164\162\157\165\147\150\054\040\167\151" + "\156\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166" + "\151\145\167\056\164\162\157\165\147\150\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\142\157\170\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\051\073\040\175\012\012\164\162\145" + "\145\166\151\145\167\056\166\151\145\167\040\176\040\165\156\144" + "\145\162\163\150\157\157\164\056\164\157\160\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151" + "\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156" + "\055\142\157\170\040\176\040\165\156\144\145\162\163\150\157\157" + "\164\056\164\157\160\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\156\157\156\145\073\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\156\157\156\145\073\040\175\012\012\164" + "\162\145\145\166\151\145\167\056\166\151\145\167\040\141\143\143" + "\145\154\145\144\151\164\157\162\040\076\040\154\141\142\145\154" + "\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040\164" + "\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\040\141\143\143\145\154\145" + "\144\151\164\157\162\040\076\040\154\141\142\145\154\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\155\151\170\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\100\166\151\145\167\137\142\147\137\143\157\154\157" + "\162\054\060\056\071\051\073\040\175\012\012\164\162\145\145\166" + "\151\145\167\056\156\141\166\151\147\141\164\151\157\156\055\163" + "\151\144\145\142\141\162\040\173\040\160\141\144\144\151\156\147" + "\072\040\060\073\040\175\012\012\164\162\145\145\166\151\145\167" + "\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145" + "\142\141\162\072\163\145\154\145\143\164\145\144\072\146\157\143" + "\165\163\054\040\164\162\145\145\166\151\145\167\056\156\141\166" + "\151\147\141\164\151\157\156\055\163\151\144\145\142\141\162\072" + "\163\145\154\145\143\164\145\144\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\051\073\040\175\012\012\164\162\145\145\166\151\145" + "\167\040\145\156\164\162\171\072\146\157\143\165\163\055\167\151" + "\164\150\151\156\072\144\151\162\050\162\164\154\051\054\040\164" + "\162\145\145\166\151\145\167\040\145\156\164\162\171\072\146\157" + "\143\165\163\055\167\151\164\150\151\156\072\144\151\162\050\154" + "\164\162\051\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\166\151\145\167\137\142\147" + "\137\143\157\154\157\162\073\040\164\162\141\156\163\151\164\151" + "\157\156\055\160\162\157\160\145\162\164\171\072\040\143\157\154" + "\157\162\054\040\142\141\143\153\147\162\157\165\156\144\073\040" + "\175\012\012\164\162\145\145\166\151\145\167\040\145\156\164\162" + "\171\056\146\154\141\164\054\040\164\162\145\145\166\151\145\167" + "\040\145\156\164\162\171\040\173\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\156\157\156" + "\145\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\100\166\151\145\167\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\164\162\145\145\166\151\145\167" + "\040\145\156\164\162\171\056\146\154\141\164\072\146\157\143\165" + "\163\055\167\151\164\150\151\156\054\040\164\162\145\145\166\151" + "\145\167\040\145\156\164\162\171\072\146\157\143\165\163\055\167" + "\151\164\150\151\156\040\173\040\142\157\162\144\145\162\055\143" + "\157\154\157\162\072\040\100\141\143\143\145\156\164\137\143\157" + "\154\157\162\073\040\175\012\012\164\162\145\145\166\151\145\167" + "\040\163\160\151\156\142\165\164\164\157\156\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\173\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\060\073\040\142\157\162\144" + "\145\162\055\163\164\171\154\145\072\040\156\157\156\145\073\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\060" + "\073\040\175\012\012\164\162\145\145\166\151\145\167\040\163\160" + "\151\156\142\165\164\164\157\156\072\156\157\164\050\056\166\145" + "\162\164\151\143\141\154\051\040\076\040\164\145\170\164\040\173" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\060\073\040" + "\160\141\144\144\151\156\147\072\040\061\160\170\040\062\160\170" + "\073\040\175\012\012\056\163\151\144\145\142\141\162\072\156\157" + "\164\050\163\145\160\141\162\141\164\157\162\051\072\144\151\162" + "\050\154\164\162\051\054\040\056\163\151\144\145\142\141\162\056" + "\154\145\146\164\072\156\157\164\050\163\145\160\141\162\141\164" + "\157\162\051\054\040\056\163\151\144\145\142\141\162\056\154\145" + "\146\164\072\156\157\164\050\163\145\160\141\162\141\164\157\162" + "\051\072\144\151\162\050\162\164\154\051\040\173\040\142\157\162" + "\144\145\162\055\162\151\147\150\164\072\040\061\160\170\040\163" + "\157\154\151\144\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\065\051\073\040\142" + "\157\162\144\145\162\055\154\145\146\164\055\163\164\171\154\145" + "\072\040\156\157\156\145\073\040\175\012\012\056\163\151\144\145" + "\142\141\162\072\156\157\164\050\163\145\160\141\162\141\164\157" + "\162\051\072\144\151\162\050\162\164\154\051\054\040\056\163\151" + "\144\145\142\141\162\056\162\151\147\150\164\072\156\157\164\050" + "\163\145\160\141\162\141\164\157\162\051\040\173\040\142\157\162" + "\144\145\162\055\154\145\146\164\072\040\061\160\170\040\163\157" + "\154\151\144\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\065\051\073\040\142\157" + "\162\144\145\162\055\162\151\147\150\164\055\163\164\171\154\145" + "\072\040\156\157\156\145\073\040\175\012\012\056\163\151\144\145" + "\142\141\162\040\154\151\163\164\166\151\145\167\056\166\151\145" + "\167\054\040\056\163\151\144\145\142\141\162\040\167\151\156\144" + "\157\167\056\160\162\151\156\164\040\154\151\163\164\166\151\145" + "\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\056\163\151\144\145\142\141\162\040\154\151\163\164\166" + "\151\145\167\056\144\151\141\154\157\147\055\141\143\164\151\157" + "\156\055\142\157\170\054\040\056\163\151\144\145\142\141\162\040" + "\154\151\163\164\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141" + "\162\145\156\164\073\040\143\157\154\157\162\072\040\151\156\150" + "\145\162\151\164\073\040\175\012\012\160\141\156\145\144\040\056" + "\163\151\144\145\142\141\162\056\154\145\146\164\054\040\160\141" + "\156\145\144\040\056\163\151\144\145\142\141\162\056\162\151\147" + "\150\164\054\040\160\141\156\145\144\040\056\163\151\144\145\142" + "\141\162\056\154\145\146\164\072\144\151\162\050\162\164\154\051" + "\054\040\160\141\156\145\144\040\056\163\151\144\145\142\141\162" + "\072\144\151\162\050\162\164\154\051\054\040\160\141\156\145\144" + "\040\056\163\151\144\145\142\141\162\072\144\151\162\050\154\164" + "\162\051\054\040\160\141\156\145\144\040\056\163\151\144\145\142" + "\141\162\040\173\040\142\157\162\144\145\162\055\163\164\171\154" + "\145\072\040\156\157\156\145\073\040\175\012\012\056\154\141\162" + "\147\145\055\164\151\164\154\145\040\173\040\146\157\156\164\055" + "\167\145\151\147\150\164\072\040\063\060\060\073\040\146\157\156" + "\164\055\163\151\172\145\072\040\062\064\160\164\073\040\175\012" + "\012\144\162\157\160\144\157\167\156\040\076\040\142\165\164\164" + "\157\156\040\076\040\142\157\170\054\040\143\157\155\142\157\142" + "\157\170\040\076\040\142\165\164\164\157\156\040\076\040\142\157" + "\170\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151" + "\156\147\072\040\066\160\170\073\040\175\012\012\144\162\157\160" + "\144\157\167\156\040\076\040\142\165\164\164\157\156\040\076\040" + "\142\157\170\040\076\040\163\164\141\143\153\040\076\040\162\157" + "\167\056\141\143\164\151\166\141\164\141\142\154\145\072\150\157" + "\166\145\162\054\040\143\157\155\142\157\142\157\170\040\076\040" + "\142\165\164\164\157\156\040\076\040\142\157\170\040\076\040\163" + "\164\141\143\153\040\076\040\162\157\167\056\141\143\164\151\166" + "\141\164\141\142\154\145\072\150\157\166\145\162\054\040\144\162" + "\157\160\144\157\167\156\040\076\040\142\165\164\164\157\156\040" + "\076\040\142\157\170\040\076\040\163\164\141\143\153\040\076\040" + "\162\157\167\056\141\143\164\151\166\141\164\141\142\154\145\072" + "\141\143\164\151\166\145\054\040\143\157\155\142\157\142\157\170" + "\040\076\040\142\165\164\164\157\156\040\076\040\142\157\170\040" + "\076\040\163\164\141\143\153\040\076\040\162\157\167\056\141\143" + "\164\151\166\141\164\141\142\154\145\072\141\143\164\151\166\145" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\175\012\012\144\162\157\160\144\157\167\156" + "\040\141\162\162\157\167\054\040\143\157\155\142\157\142\157\170" + "\040\141\162\162\157\167\040\173\040\055\147\164\153\055\151\143" + "\157\156\055\163\157\165\162\143\145\072\040\055\147\164\153\055" + "\151\143\157\156\164\150\145\155\145\050\042\160\141\156\055\144" + "\157\167\156\055\163\171\155\142\157\154\151\143\042\051\073\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\061\066\160\170" + "\073\040\155\151\156\055\167\151\144\164\150\072\040\061\066\160" + "\170\073\040\175\012\012\144\162\157\160\144\157\167\156\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\054\040\143\157\155" + "\142\157\142\157\170\072\144\162\157\160\050\141\143\164\151\166" + "\145\051\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\175\012\012\144\162\157\160\144\157" + "\167\156\040\160\157\160\157\166\145\162\056\155\145\156\165\054" + "\040\143\157\155\142\157\142\157\170\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\173\040\160\141\144\144\151\156\147" + "\055\164\157\160\072\040\066\160\170\073\040\175\012\012\144\162" + "\157\160\144\157\167\156\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\154\151\163\164\166\151\145\167\040\076\040\162" + "\157\167\054\040\143\157\155\142\157\142\157\170\040\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\154\151\163\164\166\151" + "\145\167\040\076\040\162\157\167\040\173\040\155\151\156\055\167" + "\151\144\164\150\072\040\060\073\040\175\012\012\144\162\157\160" + "\144\157\167\156\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\056\144\162\157\160\144\157\167\156\055\163\145\141\162" + "\143\150\142\141\162\054\040\143\157\155\142\157\142\157\170\040" + "\160\157\160\157\166\145\162\056\155\145\156\165\040\056\144\162" + "\157\160\144\157\167\156\055\163\145\141\162\143\150\142\141\162" + "\040\173\040\160\141\144\144\151\156\147\072\040\066\160\170\073" + "\040\175\012\012\144\162\157\160\144\157\167\156\040\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\056\144\162\157\160\144" + "\157\167\156\055\163\145\141\162\143\150\142\141\162\040\053\040" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\040\076" + "\040\165\156\144\145\162\163\150\157\157\164\056\164\157\160\054" + "\040\143\157\155\142\157\142\157\170\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\056\144\162\157\160\144\157\167\156" + "\055\163\145\141\162\143\150\142\141\162\040\053\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\164\157\160\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\061\160\170\040\141\154\160\150\141\050\100\160\157" + "\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\065\051\073\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\142\157\164\164\157\155\054\040" + "\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\160\157\160\157\166\145\162\056\145" + "\155\157\152\151\055\160\151\143\153\145\162\040\076\040\143\157" + "\156\164\145\156\164\163\040\173\040\160\141\144\144\151\156\147" + "\072\040\060\073\040\175\012\012\056\145\155\157\152\151\055\163" + "\145\141\162\143\150\142\141\162\040\173\040\160\141\144\144\151" + "\156\147\072\040\066\160\170\073\040\175\012\012\056\145\155\157" + "\152\151\055\164\157\157\154\142\141\162\040\173\040\160\141\144" + "\144\151\156\147\072\040\063\160\170\073\040\175\012\012\142\165" + "\164\164\157\156\056\145\155\157\152\151\055\163\145\143\164\151" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\173\040\155\151\156\055" + "\167\151\144\164\150\072\040\063\062\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\063\062\160\170\073\040\175" + "\012\012\160\157\160\157\166\145\162\056\145\155\157\152\151\055" + "\160\151\143\153\145\162\040\145\155\157\152\151\040\173\040\146" + "\157\156\164\055\163\151\172\145\072\040\170\055\154\141\162\147" + "\145\073\040\160\141\144\144\151\156\147\072\040\066\160\170\073" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\066\160\170\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\145\155\157\152\151\055\160\151\143\153\145\162\040\145\155\157" + "\152\151\072\146\157\143\165\163\054\040\160\157\160\157\166\145" + "\162\056\145\155\157\152\151\055\160\151\143\153\145\162\040\145" + "\155\157\152\151\072\150\157\166\145\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\060\067" + "\051\073\040\175\012\012\160\157\160\157\166\145\162\056\145\155" + "\157\152\151\055\160\151\143\153\145\162\040\145\155\157\152\151" + "\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\066\051\073\040" + "\175\012\012\160\157\160\157\166\145\162\056\145\155\157\152\151" + "\055\160\151\143\153\145\162\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\056\166\151\145\167\054\040\160\157\160" + "\157\166\145\162\056\145\155\157\152\151\055\160\151\143\153\145" + "\162\040\167\151\156\144\157\167\056\160\162\151\156\164\040\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\056\144\151" + "\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170\054" + "\040\167\151\156\144\157\167\056\160\162\151\156\164\040\160\157" + "\160\157\166\145\162\056\145\155\157\152\151\055\160\151\143\153" + "\145\162\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\156\157\156\145\073\040\143\157\154\157\162\072\040\151" + "\156\150\145\162\151\164\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\145\155\157\152\151\055\160\151\143\153\145\162\040" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056\166" + "\151\145\167\040\076\040\165\156\144\145\162\163\150\157\157\164" + "\056\164\157\160\054\040\160\157\160\157\166\145\162\056\145\155" + "\157\152\151\055\160\151\143\153\145\162\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\056\144\151\141\154\157\147\055\141\143" + "\164\151\157\156\055\142\157\170\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\164\157\160\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\160\157\160\157\166\145\162\056" + "\145\155\157\152\151\055\160\151\143\153\145\162\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\056\144\151\141\154" + "\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\164\157\160\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\060\040\061\160\170\040\141\154\160\150\141\050\100" + "\160\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\065\051\073\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162" + "\141\144\151\145\156\164\050\164\157\040\142\157\164\164\157\155" + "\054\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\065\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040" + "\064\160\170\051\073\040\175\012\012\160\157\160\157\166\145\162" + "\056\145\155\157\152\151\055\160\151\143\153\145\162\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\056\166\151\145" + "\167\040\076\040\165\156\144\145\162\163\150\157\157\164\056\142" + "\157\164\164\157\155\054\040\160\157\160\157\166\145\162\056\145" + "\155\157\152\151\055\160\151\143\153\145\162\040\167\151\156\144" + "\157\167\056\160\162\151\156\164\040\163\143\162\157\154\154\145" + "\144\167\151\156\144\157\167\056\144\151\141\154\157\147\055\141" + "\143\164\151\157\156\055\142\157\170\040\076\040\165\156\144\145" + "\162\163\150\157\157\164\056\142\157\164\164\157\155\054\040\167" + "\151\156\144\157\167\056\160\162\151\156\164\040\160\157\160\157" + "\166\145\162\056\145\155\157\152\151\055\160\151\143\153\145\162" + "\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\040\076\040\165\156\144\145\162\163\150\157\157\164\056\142" + "\157\164\164\157\155\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\055\061\160\170" + "\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065" + "\051\073\040\142\141\143\153\147\162\157\165\156\144\072\040\154" + "\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164" + "\157\040\164\157\160\054\040\141\154\160\150\141\050\100\160\157" + "\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\065\051\054\040\164\162\141\156\163\160\141" + "\162\145\156\164\040\064\160\170\051\073\040\175\012\012\160\157" + "\160\157\166\145\162\056\145\155\157\152\151\055\143\157\155\160" + "\154\145\164\151\157\156\040\076\040\143\157\156\164\145\156\164" + "\163\040\173\040\160\141\144\144\151\156\147\072\040\066\160\170" + "\073\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155" + "\072\040\064\160\170\073\040\175\012\012\145\155\157\152\151\055" + "\143\157\155\160\154\145\164\151\157\156\055\162\157\167\040\173" + "\040\160\141\144\144\151\156\147\072\040\066\160\170\073\040\155" + "\141\162\147\151\156\055\142\157\164\164\157\155\072\040\062\160" + "\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\066\160\170\073\040\175\012\012\145\155\157\152\151\055" + "\143\157\155\160\154\145\164\151\157\156\055\162\157\167\072\144" + "\151\162\050\154\164\162\051\040\173\040\160\141\144\144\151\156" + "\147\055\162\151\147\150\164\072\040\061\062\160\170\073\040\175" + "\012\012\145\155\157\152\151\055\143\157\155\160\154\145\164\151" + "\157\156\055\162\157\167\072\144\151\162\050\162\164\154\051\040" + "\173\040\160\141\144\144\151\156\147\055\154\145\146\164\072\040" + "\061\062\160\170\073\040\175\012\012\145\155\157\152\151\055\143" + "\157\155\160\154\145\164\151\157\156\055\162\157\167\040\076\040" + "\142\157\170\040\173\040\142\157\162\144\145\162\055\163\160\141" + "\143\151\156\147\072\040\066\160\170\073\040\175\012\012\145\155" + "\157\152\151\055\143\157\155\160\154\145\164\151\157\156\055\162" + "\157\167\072\146\157\143\165\163\054\040\145\155\157\152\151\055" + "\143\157\155\160\154\145\164\151\157\156\055\162\157\167\072\150" + "\157\166\145\162\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061\051" + "\073\040\143\157\154\157\162\072\040\100\160\157\160\157\166\145" + "\162\137\146\147\137\143\157\154\157\162\073\040\175\012\012\145" + "\155\157\152\151\055\143\157\155\160\154\145\164\151\157\156\055" + "\162\157\167\072\141\143\164\151\166\145\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\061\066\051\073\040\175\012\012\163\160\151\156" + "\142\165\164\164\157\156\054\040\145\156\164\162\171\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\063\064\160\170" + "\073\040\160\141\144\144\151\156\147\055\154\145\146\164\072\040" + "\071\160\170\073\040\160\141\144\144\151\156\147\055\162\151\147" + "\150\164\072\040\071\160\170\073\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\066\160\170\073\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160\170" + "\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\051\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\154\151\160\072\040\160\141" + "\144\144\151\156\147\055\142\157\170\073\040\143\141\162\145\164" + "\055\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103" + "\157\154\157\162\073\040\175\012\012\163\160\151\156\142\165\164" + "\164\157\156\054\040\145\156\164\162\171\040\173\040\157\165\164" + "\154\151\156\145\072\040\060\040\163\157\154\151\144\040\164\162" + "\141\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151" + "\156\145\055\157\146\146\163\145\164\072\040\064\160\170\073\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\157\165\164\154" + "\151\156\145\055\143\157\154\157\162\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\054\040\157\165\164\154\151\156\145\055\167\151" + "\144\164\150\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040" + "\157\165\164\154\151\156\145\055\157\146\146\163\145\164\040\062" + "\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145" + "\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056" + "\064\065\054\040\060\056\071\064\051\073\040\175\012\012\163\160" + "\151\156\142\165\164\164\157\156\072\146\157\143\165\163\055\167" + "\151\164\150\151\156\054\040\145\156\164\162\171\072\146\157\143" + "\165\163\055\167\151\164\150\151\156\040\173\040\157\165\164\154" + "\151\156\145\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\100\141\143\143\145\156\164\137\143\157\154\157\162\054\060" + "\056\065\051\073\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\072\040\062\160\170\073\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\072\040\055\062\160\170\073\040\175" + "\012\012\056\157\163\144\040\163\160\151\156\142\165\164\164\157" + "\156\072\146\157\143\165\163\055\167\151\164\150\151\156\054\040" + "\056\157\163\144\040\145\156\164\162\171\072\146\157\143\165\163" + "\055\167\151\164\150\151\156\040\173\040\157\165\164\154\151\156" + "\145\055\143\157\154\157\162\072\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\065" + "\051\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\164\145\170\164\040\076\040\142\154\157\143\153\055" + "\143\165\162\163\157\162\054\040\145\156\164\162\171\040\076\040" + "\164\145\170\164\040\076\040\142\154\157\143\153\055\143\165\162" + "\163\157\162\040\173\040\143\157\154\157\162\072\040\100\166\151" + "\145\167\137\142\147\137\143\157\154\157\162\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\166\151\145\167\137\146\147\137\143\157\154\157\162\073\040\175" + "\012\012\163\160\151\156\142\165\164\164\157\156\056\146\154\141" + "\164\054\040\145\156\164\162\171\056\146\154\141\164\072\146\157" + "\143\165\163\055\167\151\164\150\151\156\054\040\145\156\164\162" + "\171\056\146\154\141\164\072\144\151\163\141\142\154\145\144\054" + "\040\145\156\164\162\171\056\146\154\141\164\040\173\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\060\073\040\160\141\144" + "\144\151\156\147\072\040\062\160\170\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\156\157\156\145\073\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\072\040\060\073\040\175\012" + "\012\163\160\151\156\142\165\164\164\157\156\072\144\151\163\141" + "\142\154\145\144\054\040\145\156\164\162\171\072\144\151\163\141" + "\142\154\145\144\040\173\040\146\151\154\164\145\162\072\040\157" + "\160\141\143\151\164\171\050\060\056\065\051\073\040\175\012\012" + "\163\160\151\156\142\165\164\164\157\156\056\145\162\162\157\162" + "\054\040\145\156\164\162\171\056\145\162\162\157\162\040\173\040" + "\157\165\164\154\151\156\145\072\040\060\040\163\157\154\151\144" + "\040\164\162\141\156\163\160\141\162\145\156\164\073\040\157\165" + "\164\154\151\156\145\055\157\146\146\163\145\164\072\040\064\160" + "\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040\157" + "\165\164\154\151\156\145\055\143\157\154\157\162\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175\012" + "\012\163\160\151\156\142\165\164\164\157\156\056\145\162\162\157" + "\162\072\146\157\143\165\163\055\167\151\164\150\151\156\054\040" + "\145\156\164\162\171\056\145\162\162\157\162\072\146\157\143\165" + "\163\055\167\151\164\150\151\156\040\173\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065" + "\051\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150" + "\072\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\072\040\055\062\160\170\073\040\175\012\012" + "\163\160\151\156\142\165\164\164\157\156\056\145\162\162\157\162" + "\040\076\040\164\145\170\164\040\076\040\163\145\154\145\143\164" + "\151\157\156\072\146\157\143\165\163\055\167\151\164\150\151\156" + "\054\040\145\156\164\162\171\056\145\162\162\157\162\040\076\040" + "\164\145\170\164\040\076\040\163\145\154\145\143\164\151\157\156" + "\072\146\157\143\165\163\055\167\151\164\150\151\156\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\100\145\162\162\157\162\137\143" + "\157\154\157\162\054\060\056\062\051\073\040\175\012\012\163\160" + "\151\156\142\165\164\164\157\156\056\145\162\162\157\162\040\076" + "\040\164\145\170\164\040\076\040\143\165\162\163\157\162\055\150" + "\141\156\144\154\145\040\076\040\143\157\156\164\145\156\164\163" + "\054\040\145\156\164\162\171\056\145\162\162\157\162\040\076\040" + "\164\145\170\164\040\076\040\143\165\162\163\157\162\055\150\141" + "\156\144\154\145\040\076\040\143\157\156\164\145\156\164\163\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\143\165\162\162\145\156\164\103\157\154\157\162" + "\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156\056" + "\145\162\162\157\162\040\076\040\160\162\157\147\162\145\163\163" + "\040\076\040\164\162\157\165\147\150\040\076\040\160\162\157\147" + "\162\145\163\163\054\040\145\156\164\162\171\056\145\162\162\157" + "\162\040\076\040\160\162\157\147\162\145\163\163\040\076\040\164" + "\162\157\165\147\150\040\076\040\160\162\157\147\162\145\163\163" + "\040\173\040\142\157\162\144\145\162\055\143\157\154\157\162\072" + "\040\143\165\162\162\145\156\164\103\157\154\157\162\073\040\175" + "\012\012\163\160\151\156\142\165\164\164\157\156\056\167\141\162" + "\156\151\156\147\054\040\145\156\164\162\171\056\167\141\162\156" + "\151\156\147\040\173\040\157\165\164\154\151\156\145\072\040\060" + "\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\064\160\170\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\073\040\175\012\012\163\160\151\156\142\165\164\164\157" + "\156\056\167\141\162\156\151\156\147\072\146\157\143\165\163\055" + "\167\151\164\150\151\156\054\040\145\156\164\162\171\056\167\141" + "\162\156\151\156\147\072\146\157\143\165\163\055\167\151\164\150" + "\151\156\040\173\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\065\051\073\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\072\040\062\160\170\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\055\062\160\170\073\040\175\012\012\163\160\151\156\142\165" + "\164\164\157\156\056\167\141\162\156\151\156\147\040\076\040\164" + "\145\170\164\040\076\040\163\145\154\145\143\164\151\157\156\072" + "\146\157\143\165\163\055\167\151\164\150\151\156\054\040\145\156" + "\164\162\171\056\167\141\162\156\151\156\147\040\076\040\164\145" + "\170\164\040\076\040\163\145\154\145\143\164\151\157\156\072\146" + "\157\143\165\163\055\167\151\164\150\151\156\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\100\167\141\162\156\151\156\147\137\143" + "\157\154\157\162\054\060\056\062\051\073\040\175\012\012\163\160" + "\151\156\142\165\164\164\157\156\056\167\141\162\156\151\156\147" + "\040\076\040\164\145\170\164\040\076\040\143\165\162\163\157\162" + "\055\150\141\156\144\154\145\040\076\040\143\157\156\164\145\156" + "\164\163\054\040\145\156\164\162\171\056\167\141\162\156\151\156" + "\147\040\076\040\164\145\170\164\040\076\040\143\165\162\163\157" + "\162\055\150\141\156\144\154\145\040\076\040\143\157\156\164\145" + "\156\164\163\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103" + "\157\154\157\162\073\040\175\012\012\163\160\151\156\142\165\164" + "\164\157\156\056\167\141\162\156\151\156\147\040\076\040\160\162" + "\157\147\162\145\163\163\040\076\040\164\162\157\165\147\150\040" + "\076\040\160\162\157\147\162\145\163\163\054\040\145\156\164\162" + "\171\056\167\141\162\156\151\156\147\040\076\040\160\162\157\147" + "\162\145\163\163\040\076\040\164\162\157\165\147\150\040\076\040" + "\160\162\157\147\162\145\163\163\040\173\040\142\157\162\144\145" + "\162\055\143\157\154\157\162\072\040\143\165\162\162\145\156\164" + "\103\157\154\157\162\073\040\175\012\012\163\160\151\156\142\165" + "\164\164\157\156\056\163\165\143\143\145\163\163\054\040\145\156" + "\164\162\171\056\163\165\143\143\145\163\163\040\173\040\157\165" + "\164\154\151\156\145\072\040\060\040\163\157\154\151\144\040\164" + "\162\141\156\163\160\141\162\145\156\164\073\040\157\165\164\154" + "\151\156\145\055\157\146\146\163\145\164\072\040\064\160\170\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\157\165\164" + "\154\151\156\145\055\143\157\154\157\162\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\073\040\175\012\012\163" + "\160\151\156\142\165\164\164\157\156\056\163\165\143\143\145\163" + "\163\072\146\157\143\165\163\055\167\151\164\150\151\156\054\040" + "\145\156\164\162\171\056\163\165\143\143\145\163\163\072\146\157" + "\143\165\163\055\167\151\164\150\151\156\040\173\040\157\165\164" + "\154\151\156\145\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\051\073\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\072\040\062\160\170\073\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\072\040\055\062\160\170\073\040\175" + "\012\012\163\160\151\156\142\165\164\164\157\156\056\163\165\143" + "\143\145\163\163\040\076\040\164\145\170\164\040\076\040\163\145" + "\154\145\143\164\151\157\156\072\146\157\143\165\163\055\167\151" + "\164\150\151\156\054\040\145\156\164\162\171\056\163\165\143\143" + "\145\163\163\040\076\040\164\145\170\164\040\076\040\163\145\154" + "\145\143\164\151\157\156\072\146\157\143\165\163\055\167\151\164" + "\150\151\156\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\163" + "\165\143\143\145\163\163\137\143\157\154\157\162\054\060\056\062" + "\051\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156" + "\056\163\165\143\143\145\163\163\040\076\040\164\145\170\164\040" + "\076\040\143\165\162\163\157\162\055\150\141\156\144\154\145\040" + "\076\040\143\157\156\164\145\156\164\163\054\040\145\156\164\162" + "\171\056\163\165\143\143\145\163\163\040\076\040\164\145\170\164" + "\040\076\040\143\165\162\163\157\162\055\150\141\156\144\154\145" + "\040\076\040\143\157\156\164\145\156\164\163\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\143\165\162\162\145\156\164\103\157\154\157\162\073\040\175\012" + "\012\163\160\151\156\142\165\164\164\157\156\056\163\165\143\143" + "\145\163\163\040\076\040\160\162\157\147\162\145\163\163\040\076" + "\040\164\162\157\165\147\150\040\076\040\160\162\157\147\162\145" + "\163\163\054\040\145\156\164\162\171\056\163\165\143\143\145\163" + "\163\040\076\040\160\162\157\147\162\145\163\163\040\076\040\164" + "\162\157\165\147\150\040\076\040\160\162\157\147\162\145\163\163" + "\040\173\040\142\157\162\144\145\162\055\143\157\154\157\162\072" + "\040\143\165\162\162\145\156\164\103\157\154\157\162\073\040\175" + "\012\012\163\160\151\156\142\165\164\164\157\156\040\076\040\151" + "\155\141\147\145\054\040\145\156\164\162\171\040\076\040\151\155" + "\141\147\145\040\173\040\157\160\141\143\151\164\171\072\040\060" + "\056\067\073\040\175\012\012\163\160\151\156\142\165\164\164\157" + "\156\040\076\040\151\155\141\147\145\072\150\157\166\145\162\054" + "\040\145\156\164\162\171\040\076\040\151\155\141\147\145\072\150" + "\157\166\145\162\040\173\040\157\160\141\143\151\164\171\072\040" + "\061\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\151\155\141\147\145\072\141\143\164\151\166\145\054" + "\040\145\156\164\162\171\040\076\040\151\155\141\147\145\072\141" + "\143\164\151\166\145\040\173\040\157\160\141\143\151\164\171\072" + "\040\060\056\070\073\040\175\012\012\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\151\155\141\147\145\056\154\145\146\164" + "\054\040\145\156\164\162\171\040\076\040\151\155\141\147\145\056" + "\154\145\146\164\040\173\040\155\141\162\147\151\156\055\162\151" + "\147\150\164\072\040\066\160\170\073\040\175\012\012\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\151\155\141\147\145\056" + "\162\151\147\150\164\054\040\145\156\164\162\171\040\076\040\151" + "\155\141\147\145\056\162\151\147\150\164\040\173\040\155\141\162" + "\147\151\156\055\154\145\146\164\072\040\066\160\170\073\040\175" + "\012\012\163\160\151\156\142\165\164\164\157\156\056\160\141\163" + "\163\167\157\162\144\040\151\155\141\147\145\056\143\141\160\163" + "\055\154\157\143\153\055\151\156\144\151\143\141\164\157\162\054" + "\040\145\156\164\162\171\056\160\141\163\163\167\157\162\144\040" + "\151\155\141\147\145\056\143\141\160\163\055\154\157\143\153\055" + "\151\156\144\151\143\141\164\157\162\040\173\040\157\160\141\143" + "\151\164\171\072\040\060\056\063\073\040\175\012\012\163\160\151" + "\156\142\165\164\164\157\156\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\054\040\145\156\164\162\171\072\144\162\157\160" + "\050\141\143\164\151\166\145\051\072\146\157\143\165\163\055\167" + "\151\164\150\151\156\054\040\145\156\164\162\171\072\144\162\157" + "\160\050\141\143\164\151\166\145\051\040\173\040\142\157\162\144" + "\145\162\055\143\157\154\157\162\072\040\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\060\040\060\040\061\160\170\040\100\141\143\143\145\156\164\137" + "\142\147\137\143\157\154\157\162\073\040\175\012\012\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\160\162\157\147\162\145" + "\163\163\054\040\145\156\164\162\171\040\076\040\160\162\157\147" + "\162\145\163\163\040\173\040\155\141\162\147\151\156\055\142\157" + "\164\164\157\155\072\040\063\160\170\073\040\175\012\012\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\160\162\157\147\162" + "\145\163\163\040\076\040\164\162\157\165\147\150\054\040\145\156" + "\164\162\171\040\076\040\160\162\157\147\162\145\163\163\040\076" + "\040\164\162\157\165\147\150\040\173\040\155\151\156\055\150\145" + "\151\147\150\164\072\040\062\160\170\073\040\175\012\012\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\160\162\157\147\162" + "\145\163\163\040\076\040\164\162\157\165\147\150\040\076\040\160" + "\162\157\147\162\145\163\163\054\040\145\156\164\162\171\040\076" + "\040\160\162\157\147\162\145\163\163\040\076\040\164\162\157\165" + "\147\150\040\076\040\160\162\157\147\162\145\163\163\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040\142" + "\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072" + "\040\156\157\156\145\073\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055" + "\167\151\144\164\150\072\040\060\040\060\040\062\160\170\073\040" + "\142\157\162\144\145\162\055\143\157\154\157\162\072\040\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073\040" + "\142\157\162\144\145\162\055\163\164\171\154\145\072\040\163\157" + "\154\151\144\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\175\012\012\056\157\163\144\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\160\162\157\147" + "\162\145\163\163\040\076\040\164\162\157\165\147\150\040\076\040" + "\160\162\157\147\162\145\163\163\054\040\056\157\163\144\040\145" + "\156\164\162\171\040\076\040\160\162\157\147\162\145\163\163\040" + "\076\040\164\162\157\165\147\150\040\076\040\160\162\157\147\162" + "\145\163\163\040\173\040\142\157\162\144\145\162\055\143\157\154" + "\157\162\072\040\162\147\142\141\050\062\065\065\054\040\062\065" + "\065\054\040\062\065\065\054\040\060\056\067\065\051\073\040\175" + "\012\012\145\170\160\141\156\144\145\162\040\173\040\155\151\156" + "\055\167\151\144\164\150\072\040\061\066\160\170\073\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\061\066\160\170\073\040" + "\055\147\164\153\055\151\143\157\156\055\163\157\165\162\143\145" + "\072\040\055\147\164\153\055\151\143\157\156\164\150\145\155\145" + "\050\042\160\141\156\055\145\156\144\055\163\171\155\142\157\154" + "\151\143\042\051\073\040\175\012\012\145\170\160\141\156\144\145" + "\162\072\144\151\162\050\162\164\154\051\040\173\040\055\147\164" + "\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040\055" + "\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042\160" + "\141\156\055\145\156\144\055\163\171\155\142\157\154\151\143\055" + "\162\164\154\042\051\073\040\175\012\012\145\170\160\141\156\144" + "\145\162\072\144\151\163\141\142\154\145\144\040\173\040\146\151" + "\154\164\145\162\072\040\157\160\141\143\151\164\171\050\060\056" + "\065\051\073\040\175\012\012\145\170\160\141\156\144\145\162\072" + "\143\150\145\143\153\145\144\040\173\040\055\147\164\153\055\151" + "\143\157\156\055\163\157\165\162\143\145\072\040\055\147\164\153" + "\055\151\143\157\156\164\150\145\155\145\050\042\160\141\156\055" + "\144\157\167\156\055\163\171\155\142\157\154\151\143\042\051\073" + "\040\175\012\012\145\170\160\141\156\144\145\162\055\167\151\144" + "\147\145\164\040\076\040\142\157\170\040\076\040\164\151\164\154" + "\145\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163" + "\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\064\160\170\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\073\040\175\012\012\145\170\160\141\156\144\145\162\055\167\151" + "\144\147\145\164\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\040\076\040\142\157\170\040\076" + "\040\164\151\164\154\145\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\054\060\056\065\051" + "\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072" + "\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\055\062\160\170\073\040\175\012\012\145" + "\170\160\141\156\144\145\162\055\167\151\144\147\145\164\040\076" + "\040\142\157\170\040\076\040\164\151\164\154\145\040\173\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066\160" + "\170\073\040\175\012\012\145\170\160\141\156\144\145\162\055\167" + "\151\144\147\145\164\040\076\040\142\157\170\040\076\040\164\151" + "\164\154\145\040\076\040\145\170\160\141\156\144\145\162\040\173" + "\040\157\160\141\143\151\164\171\072\040\056\067\073\040\175\012" + "\012\145\170\160\141\156\144\145\162\055\167\151\144\147\145\164" + "\040\076\040\142\157\170\040\076\040\164\151\164\154\145\072\150" + "\157\166\145\162\040\076\040\145\170\160\141\156\144\145\162\054" + "\040\145\170\160\141\156\144\145\162\055\167\151\144\147\145\164" + "\040\076\040\142\157\170\040\076\040\164\151\164\154\145\072\141" + "\143\164\151\166\145\040\076\040\145\170\160\141\156\144\145\162" + "\040\173\040\157\160\141\143\151\164\171\072\040\061\073\040\175" + "\012\012\160\154\141\143\145\163\163\151\144\145\142\141\162\040" + "\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145" + "\142\141\162\040\076\040\162\157\167\040\173\040\160\141\144\144" + "\151\156\147\072\040\060\073\040\175\012\012\160\154\141\143\145" + "\163\163\151\144\145\142\141\162\040\056\156\141\166\151\147\141" + "\164\151\157\156\055\163\151\144\145\142\141\162\040\076\040\162" + "\157\167\040\076\040\162\145\166\145\141\154\145\162\040\173\040" + "\160\141\144\144\151\156\147\072\040\060\040\061\064\160\170\073" + "\040\175\012\012\160\154\141\143\145\163\163\151\144\145\142\141" + "\162\040\056\156\141\166\151\147\141\164\151\157\156\055\163\151" + "\144\145\142\141\162\040\076\040\162\157\167\040\151\155\141\147" + "\145\056\163\151\144\145\142\141\162\055\151\143\157\156\072\144" + "\151\162\050\154\164\162\051\040\173\040\160\141\144\144\151\156" + "\147\055\162\151\147\150\164\072\040\070\160\170\073\040\175\012" + "\012\160\154\141\143\145\163\163\151\144\145\142\141\162\040\056" + "\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145\142" + "\141\162\040\076\040\162\157\167\040\151\155\141\147\145\056\163" + "\151\144\145\142\141\162\055\151\143\157\156\072\144\151\162\050" + "\162\164\154\051\040\173\040\160\141\144\144\151\156\147\055\154" + "\145\146\164\072\040\070\160\170\073\040\175\012\012\160\154\141" + "\143\145\163\163\151\144\145\142\141\162\040\056\156\141\166\151" + "\147\141\164\151\157\156\055\163\151\144\145\142\141\162\040\076" + "\040\162\157\167\040\154\141\142\145\154\056\163\151\144\145\142" + "\141\162\055\154\141\142\145\154\072\144\151\162\050\154\164\162" + "\051\040\173\040\160\141\144\144\151\156\147\055\162\151\147\150" + "\164\072\040\062\160\170\073\040\175\012\012\160\154\141\143\145" + "\163\163\151\144\145\142\141\162\040\056\156\141\166\151\147\141" + "\164\151\157\156\055\163\151\144\145\142\141\162\040\076\040\162" + "\157\167\040\154\141\142\145\154\056\163\151\144\145\142\141\162" + "\055\154\141\142\145\154\072\144\151\162\050\162\164\154\051\040" + "\173\040\160\141\144\144\151\156\147\055\154\145\146\164\072\040" + "\062\160\170\073\040\175\012\012\142\165\164\164\157\156\056\163" + "\151\144\145\142\141\162\055\142\165\164\164\157\156\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\062\066\160\170" + "\073\040\155\151\156\055\167\151\144\164\150\072\040\062\066\160" + "\170\073\040\155\141\162\147\151\156\055\164\157\160\072\040\063" + "\160\170\073\040\155\141\162\147\151\156\055\142\157\164\164\157" + "\155\072\040\063\160\170\073\040\160\141\144\144\151\156\147\072" + "\040\060\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\061\060\060\045\073\040\175\012\012\160\154\141\143" + "\145\163\163\151\144\145\142\141\162\040\056\156\141\166\151\147" + "\141\164\151\157\156\055\163\151\144\145\142\141\162\040\076\040" + "\162\157\167\072\163\145\154\145\143\164\145\144\072\141\143\164" + "\151\166\145\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\156\157\156\145\073\040\175\012\012\160\154\141\143\145" + "\163\163\151\144\145\142\141\162\040\056\156\141\166\151\147\141" + "\164\151\157\156\055\163\151\144\145\142\141\162\040\076\040\162" + "\157\167\056\163\151\144\145\142\141\162\055\160\154\141\143\145" + "\150\157\154\144\145\162\055\162\157\167\040\173\040\160\141\144" + "\144\151\156\147\072\040\060\040\070\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\062\160\170\073\040\142\141" + "\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040" + "\151\155\141\147\145\050\100\141\143\143\145\156\164\137\142\147" + "\137\143\157\154\157\162\051\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\154\151\160\072\040\143\157\156\164\145\156" + "\164\055\142\157\170\073\040\175\012\012\160\154\141\143\145\163" + "\163\151\144\145\142\141\162\040\056\156\141\166\151\147\141\164" + "\151\157\156\055\163\151\144\145\142\141\162\040\076\040\162\157" + "\167\056\163\151\144\145\142\141\162\055\156\145\167\055\142\157" + "\157\153\155\141\162\153\055\162\157\167\040\173\040\143\157\154" + "\157\162\072\040\100\141\143\143\145\156\164\137\143\157\154\157" + "\162\073\040\175\012\012\160\154\141\143\145\163\163\151\144\145" + "\142\141\162\040\056\156\141\166\151\147\141\164\151\157\156\055" + "\163\151\144\145\142\141\162\040\076\040\162\157\167\072\144\162" + "\157\160\050\141\143\164\151\166\145\051\072\156\157\164\050\072" + "\144\151\163\141\142\154\145\144\051\040\173\040\143\157\154\157" + "\162\072\040\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\060\040\060\040\060\040\061\160\170" + "\040\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\073\040\175\012\012\162\157\167\040\151\155\141\147\145\056" + "\163\151\144\145\142\141\162\055\151\143\157\156\040\173\040\157" + "\160\141\143\151\164\171\072\040\060\056\067\073\040\175\012\012" + "\162\157\167\040\056\163\151\144\145\142\141\162\055\142\165\164" + "\164\157\156\040\173\040\157\160\141\143\151\164\171\072\040\060" + "\056\067\073\040\175\012\012\162\157\167\040\056\163\151\144\145" + "\142\141\162\055\142\165\164\164\157\156\072\150\157\166\145\162" + "\054\040\162\157\167\040\056\163\151\144\145\142\141\162\055\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\054\040\162\157" + "\167\040\056\163\151\144\145\142\141\162\055\142\165\164\164\157" + "\156\056\153\145\171\142\157\141\162\144\055\141\143\164\151\166" + "\141\164\151\156\147\040\173\040\157\160\141\143\151\164\171\072" + "\040\061\073\040\175\012\012\160\154\141\143\145\163\166\151\145" + "\167\040\056\163\145\162\166\145\162\055\154\151\163\164\055\142" + "\165\164\164\157\156\040\076\040\151\155\141\147\145\040\173\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\055\147\164\153" + "\055\151\143\157\156\055\164\162\141\156\163\146\157\162\155\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\073\040\055\147\164\153" + "\055\151\143\157\156\055\164\162\141\156\163\146\157\162\155\072" + "\040\162\157\164\141\164\145\050\060\164\165\162\156\051\073\040" + "\175\012\012\160\154\141\143\145\163\166\151\145\167\040\056\163" + "\145\162\166\145\162\055\154\151\163\164\055\142\165\164\164\157" + "\156\072\143\150\145\143\153\145\144\040\076\040\151\155\141\147" + "\145\040\173\040\055\147\164\153\055\151\143\157\156\055\164\162" + "\141\156\163\146\157\162\155\072\040\162\157\164\141\164\145\050" + "\055\060\056\065\164\165\162\156\051\073\040\175\012\012\160\154" + "\141\143\145\163\166\151\145\167\040\076\040\141\143\164\151\157" + "\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\076\040\142\157\170\040\173\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160" + "\170\073\040\175\012\012\146\151\154\145\143\150\157\157\163\145" + "\162\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\060\040\061\160\170\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\065\051\073\040" + "\175\012\012\146\151\154\145\143\150\157\157\163\145\162\040\160" + "\141\164\150\142\141\162\040\142\165\164\164\157\156\072\156\157" + "\164\050\056\151\155\141\147\145\055\142\165\164\164\157\156\051" + "\040\173\040\160\141\144\144\151\156\147\055\154\145\146\164\072" + "\040\071\160\170\073\040\160\141\144\144\151\156\147\055\162\151" + "\147\150\164\072\040\071\160\170\073\040\175\012\012\146\151\154" + "\145\143\150\157\157\163\145\162\040\160\141\164\150\142\141\162" + "\040\142\165\164\164\157\156\040\076\040\142\157\170\040\173\040" + "\142\157\162\144\145\162\055\163\160\141\143\151\156\147\072\040" + "\064\160\170\073\040\175\012\012\146\151\154\145\143\150\157\157" + "\163\145\162\040\160\141\164\150\142\141\162\040\142\165\164\164" + "\157\156\040\076\040\142\157\170\040\076\040\154\141\142\145\154" + "\040\173\040\160\141\144\144\151\156\147\055\154\145\146\164\072" + "\040\062\160\170\073\040\160\141\144\144\151\156\147\055\162\151" + "\147\150\164\072\040\062\160\170\073\040\175\012\012\146\151\154" + "\145\143\150\157\157\163\145\162\040\143\157\154\165\155\156\166" + "\151\145\167\040\076\040\154\151\163\164\166\151\145\167\040\076" + "\040\162\157\167\040\076\040\143\145\154\154\054\040\146\151\154" + "\145\143\150\157\157\163\145\162\040\164\162\145\145\166\151\145" + "\167\056\166\151\145\167\040\076\040\154\151\163\164\166\151\145" + "\167\040\076\040\162\157\167\040\076\040\143\145\154\154\054\040" + "\146\151\154\145\143\150\157\157\163\145\162\040\167\151\156\144" + "\157\167\056\160\162\151\156\164\040\164\162\145\145\166\151\145" + "\167\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\040\076\040\154\151\163\164\166\151\145\167\040\076" + "\040\162\157\167\040\076\040\143\145\154\154\054\040\167\151\156" + "\144\157\167\056\160\162\151\156\164\040\146\151\154\145\143\150" + "\157\157\163\145\162\040\164\162\145\145\166\151\145\167\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157\170" + "\040\076\040\154\151\163\164\166\151\145\167\040\076\040\162\157" + "\167\040\076\040\143\145\154\154\040\173\040\160\141\144\144\151" + "\156\147\072\040\060\073\040\175\012\012\146\151\154\145\143\150" + "\157\157\163\145\162\040\143\157\154\165\155\156\166\151\145\167" + "\040\076\040\154\151\163\164\166\151\145\167\040\076\040\162\157" + "\167\040\076\040\143\145\154\154\040\076\040\146\151\154\145\154" + "\151\163\164\143\145\154\154\054\040\146\151\154\145\143\150\157" + "\157\163\145\162\040\164\162\145\145\166\151\145\167\056\166\151" + "\145\167\040\076\040\154\151\163\164\166\151\145\167\040\076\040" + "\162\157\167\040\076\040\143\145\154\154\040\076\040\146\151\154" + "\145\154\151\163\164\143\145\154\154\054\040\146\151\154\145\143" + "\150\157\157\163\145\162\040\167\151\156\144\157\167\056\160\162" + "\151\156\164\040\164\162\145\145\166\151\145\167\056\144\151\141" + "\154\157\147\055\141\143\164\151\157\156\055\142\157\170\040\076" + "\040\154\151\163\164\166\151\145\167\040\076\040\162\157\167\040" + "\076\040\143\145\154\154\040\076\040\146\151\154\145\154\151\163" + "\164\143\145\154\154\054\040\167\151\156\144\157\167\056\160\162" + "\151\156\164\040\146\151\154\145\143\150\157\157\163\145\162\040" + "\164\162\145\145\166\151\145\167\056\144\151\141\154\157\147\055" + "\141\143\164\151\157\156\055\142\157\170\040\076\040\154\151\163" + "\164\166\151\145\167\040\076\040\162\157\167\040\076\040\143\145" + "\154\154\040\076\040\146\151\154\145\154\151\163\164\143\145\154" + "\154\040\173\040\160\141\144\144\151\156\147\072\040\070\160\170" + "\040\066\160\170\073\040\175\012\012\146\151\154\145\143\150\157" + "\157\163\145\162\040\147\162\151\144\166\151\145\167\040\173\040" + "\160\141\144\144\151\156\147\072\040\061\065\160\170\073\040\175" + "\012\012\146\151\154\145\143\150\157\157\163\145\162\040\147\162" + "\151\144\166\151\145\167\040\176\040\165\156\144\145\162\163\150" + "\157\157\164\056\164\157\160\040\173\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\151\156\163\145\164\040\060\040\061\160" + "\170\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\067\065\051\073\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147" + "\162\141\144\151\145\156\164\050\164\157\040\142\157\164\164\157" + "\155\054\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162\141" + "\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040\175" + "\012\012\146\151\154\145\143\150\157\157\163\145\162\040\147\162" + "\151\144\166\151\145\167\040\076\040\143\150\151\154\144\040\173" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\061\062\160\170\073\040\160\141\144\144\151\156\147\072\040\060" + "\073\040\155\141\162\147\151\156\072\040\063\160\170\073\040\175" + "\012\012\146\151\154\145\143\150\157\157\163\145\162\040\147\162" + "\151\144\166\151\145\167\040\076\040\143\150\151\154\144\040\076" + "\040\146\151\154\145\154\151\163\164\143\145\154\154\040\173\040" + "\160\141\144\144\151\156\147\072\040\066\160\170\040\061\062\160" + "\170\073\040\175\012\012\146\151\154\145\143\150\157\157\163\145" + "\162\040\147\162\151\144\166\151\145\167\040\076\040\143\150\151" + "\154\144\040\146\151\154\145\164\150\165\155\142\156\141\151\154" + "\040\151\155\141\147\145\040\173\040\146\151\154\164\145\162\072" + "\040\144\162\157\160\055\163\150\141\144\157\167\050\060\160\170" + "\040\061\160\170\040\061\160\170\040\162\147\142\141\050\060\054" + "\040\060\054\040\060\054\040\060\056\063\051\051\073\040\175\012" + "\012\146\151\154\145\143\150\157\157\163\145\162\040\147\162\151" + "\144\166\151\145\167\040\076\040\143\150\151\154\144\040\142\157" + "\170\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151" + "\156\147\072\040\066\160\170\073\040\175\012\012\146\151\154\145" + "\143\150\157\157\163\145\162\040\076\040\142\157\170\040\076\040" + "\141\143\164\151\157\156\142\141\162\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\060\040\055\061\160\170\040\141" + "\154\160\150\141\050\100\150\145\141\144\145\162\142\141\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\065\051" + "\054\040\060\040\055\062\160\170\040\064\160\170\040\141\154\160" + "\150\141\050\100\150\145\141\144\145\162\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\065\051\073\040" + "\175\012\012\146\151\154\145\143\150\157\157\163\145\162\040\076" + "\040\142\157\170\040\076\040\141\143\164\151\157\156\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\156\157\156\145\073\040\160\141\144\144\151\156\147\055\164\157" + "\160\072\040\066\160\170\073\040\175\012\012\146\151\154\145\143" + "\150\157\157\163\145\162\040\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\040\053\040\141\143\164\151\157\156\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\155\151\170\050\100\141\143\143\145" + "\156\164\137\142\147\137\143\157\154\157\162\054\100\166\151\145" + "\167\137\142\147\137\143\157\154\157\162\054\060\056\067\051\073" + "\040\143\157\154\157\162\072\040\100\167\151\156\144\157\167\137" + "\146\147\137\143\157\154\157\162\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\156\157\156\145\073\040\160\141\144\144" + "\151\156\147\055\164\157\160\072\040\066\160\170\073\040\146\157" + "\156\164\055\167\145\151\147\150\164\072\040\142\157\154\144\073" + "\040\175\012\012\146\151\154\145\143\150\157\157\163\145\162\040" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\040\053" + "\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\072\142\141\143\153" + "\144\162\157\160\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\155\151\170\050\100\141\143" + "\143\145\156\164\137\142\147\137\143\157\154\157\162\054\100\166" + "\151\145\167\137\142\147\137\143\157\154\157\162\054\060\056\070" + "\065\051\073\040\175\012\012\146\151\154\145\143\150\157\157\163" + "\145\162\040\160\154\141\143\145\163\166\151\145\167\040\076\040" + "\163\164\141\143\153\040\076\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\040\076\040\165\156\144\145\162\163\150" + "\157\157\164\056\142\157\164\164\157\155\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\055\061\160\170\040\141\154\160\150\141\050\100\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\164" + "\157\160\054\040\141\154\160\150\141\050\100\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162" + "\141\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040" + "\175\012\012\146\151\154\145\143\150\157\157\163\145\162\040\160" + "\154\141\143\145\163\166\151\145\167\040\076\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\100\166\151\145\167\137\142\147\137\143\157" + "\154\157\162\073\040\143\157\154\157\162\072\040\100\166\151\145" + "\167\137\146\147\137\143\157\154\157\162\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\156\157\156\145\073\040\160\141" + "\144\144\151\156\147\055\164\157\160\072\040\066\160\170\073\040" + "\175\012\012\146\151\154\145\143\150\157\157\163\145\162\040\160" + "\154\141\143\145\163\166\151\145\167\040\076\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\072\142\141\143\153\144\162\157\160\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\072\040\100\166" + "\151\145\167\137\142\147\137\143\157\154\157\162\073\040\164\162" + "\141\156\163\151\164\151\157\156\072\040\156\157\156\145\073\040" + "\175\012\012\146\151\154\145\143\150\157\157\163\145\162\040\160" + "\154\141\143\145\163\163\151\144\145\142\141\162\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\100\163\151\144\145\142\141\162\137\142\147\137\143\157\154" + "\157\162\073\040\143\157\154\157\162\072\040\100\163\151\144\145" + "\142\141\162\137\146\147\137\143\157\154\157\162\073\040\175\012" + "\012\146\151\154\145\143\150\157\157\163\145\162\040\160\154\141" + "\143\145\163\163\151\144\145\142\141\162\072\142\141\143\153\144" + "\162\157\160\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\163\151\144\145\142\141\162" + "\137\142\141\143\153\144\162\157\160\137\143\157\154\157\162\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\040\062\060" + "\060\155\163\040\145\141\163\145\055\157\165\164\073\040\175\012" + "\012\146\151\154\145\143\150\157\157\163\145\162\040\160\141\156" + "\145\144\056\150\157\162\151\172\157\156\164\141\154\040\076\040" + "\163\145\160\141\162\141\164\157\162\072\144\151\162\050\154\164" + "\162\051\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\061\160\170\040\060\040\100\163\151" + "\144\145\142\141\162\137\142\147\137\143\157\154\157\162\054\040" + "\151\156\163\145\164\040\061\160\170\040\060\040\100\163\151\144" + "\145\142\141\162\137\142\157\162\144\145\162\137\143\157\154\157" + "\162\073\040\175\012\012\146\151\154\145\143\150\157\157\163\145" + "\162\040\160\141\156\145\144\056\150\157\162\151\172\157\156\164" + "\141\154\040\076\040\163\145\160\141\162\141\164\157\162\072\144" + "\151\162\050\154\164\162\051\072\142\141\143\153\144\162\157\160" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\061\160\170\040\060\040\100\163\151\144\145" + "\142\141\162\137\142\141\143\153\144\162\157\160\137\143\157\154" + "\157\162\054\040\151\156\163\145\164\040\061\160\170\040\060\040" + "\100\163\151\144\145\142\141\162\137\142\157\162\144\145\162\137" + "\143\157\154\157\162\073\040\175\012\012\146\151\154\145\143\150" + "\157\157\163\145\162\040\160\141\156\145\144\056\150\157\162\151" + "\172\157\156\164\141\154\040\076\040\163\145\160\141\162\141\164" + "\157\162\072\144\151\162\050\162\164\154\051\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\055\061\160\170\040\060\040\100\163\151\144\145\142\141\162\137" + "\142\147\137\143\157\154\157\162\054\040\151\156\163\145\164\040" + "\055\061\160\170\040\060\040\100\163\151\144\145\142\141\162\137" + "\142\157\162\144\145\162\137\143\157\154\157\162\073\040\175\012" + "\012\146\151\154\145\143\150\157\157\163\145\162\040\160\141\156" + "\145\144\056\150\157\162\151\172\157\156\164\141\154\040\076\040" + "\163\145\160\141\162\141\164\157\162\072\144\151\162\050\162\164" + "\154\051\072\142\141\143\153\144\162\157\160\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\055\061\160\170\040\060\040\100\163\151\144\145\142\141\162\137" + "\142\141\143\153\144\162\157\160\137\143\157\154\157\162\054\040" + "\151\156\163\145\164\040\055\061\160\170\040\060\040\100\163\151" + "\144\145\142\141\162\137\142\157\162\144\145\162\137\143\157\154" + "\157\162\073\040\175\012\012\146\151\154\145\143\150\157\157\163" + "\145\162\040\160\141\156\145\144\056\150\157\162\151\172\157\156" + "\164\141\154\040\076\040\163\145\160\141\162\141\164\157\162\072" + "\142\141\143\153\144\162\157\160\040\173\040\164\162\141\156\163" + "\151\164\151\157\156\072\040\142\157\170\055\163\150\141\144\157" + "\167\040\062\060\060\155\163\040\145\141\163\145\055\157\165\164" + "\073\040\175\012\012\057\052\040\106\151\170\040\150\145\141\144" + "\145\162\040\142\141\162\040\150\145\151\147\150\164\040\151\156" + "\040\164\150\145\040\146\151\154\145\040\143\150\157\157\163\145" + "\162\040\052\057\012\167\151\156\144\157\167\056\146\151\154\145" + "\143\150\157\157\163\145\162\040\150\145\141\144\145\162\142\141" + "\162\040\142\157\170\056\163\164\141\162\164\040\053\040\142\157" + "\170\056\166\145\162\164\151\143\141\154\040\173\040\155\141\162" + "\147\151\156\055\164\157\160\072\040\055\066\160\170\073\040\155" + "\141\162\147\151\156\055\142\157\164\164\157\155\072\040\055\066" + "\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\061\062\160\170\073\040\175\012\012\150\145\141\144\145\162\142" + "\141\162\040\173\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\064\067\160\170\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\150\145\141\144\145\162" + "\142\141\162\137\142\147\137\143\157\154\157\162\073\040\143\157" + "\154\157\162\072\040\100\150\145\141\144\145\162\142\141\162\137" + "\146\147\137\143\157\154\157\162\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\151\156\163\145\164\040\060\040\055\061" + "\160\170\040\100\150\145\141\144\145\162\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\040\151\156\163\145\164" + "\040\061\160\170\040\060\040\141\154\160\150\141\050\100\150\145" + "\141\144\145\162\142\141\162\137\142\157\162\144\145\162\137\143" + "\157\154\157\162\054\060\056\061\065\051\054\040\151\156\163\145" + "\164\040\055\061\160\170\040\060\040\141\154\160\150\141\050\100" + "\150\145\141\144\145\162\142\141\162\137\142\157\162\144\145\162" + "\137\143\157\154\157\162\054\060\056\061\065\051\073\040\155\141" + "\162\147\151\156\055\154\145\146\164\072\040\055\061\160\170\073" + "\040\155\141\162\147\151\156\055\162\151\147\150\164\072\040\055" + "\061\160\170\073\040\175\012\012\150\145\141\144\145\162\142\141" + "\162\040\076\040\167\151\156\144\157\167\150\141\156\144\154\145" + "\040\076\040\142\157\170\040\173\040\160\141\144\144\151\156\147" + "\072\040\066\160\170\040\067\160\170\040\067\160\170\040\067\160" + "\170\073\040\175\012\012\150\145\141\144\145\162\142\141\162\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076" + "\040\142\157\170\040\076\040\142\157\170\056\163\164\141\162\164" + "\054\040\150\145\141\144\145\162\142\141\162\040\076\040\167\151" + "\156\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170" + "\040\076\040\142\157\170\056\145\156\144\040\173\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160\170" + "\073\040\175\012\012\150\145\141\144\145\162\142\141\162\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076\040" + "\142\157\170\040\076\040\142\157\170\056\163\164\141\162\164\072" + "\144\151\162\050\154\164\162\051\054\040\150\145\141\144\145\162" + "\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\040\076\040\142\157\170\056\145" + "\156\144\072\144\151\162\050\162\164\154\051\054\040\150\145\141" + "\144\145\162\142\141\162\040\076\040\167\151\156\144\157\167\150" + "\141\156\144\154\145\040\076\040\142\157\170\040\076\040\167\151" + "\144\147\145\164\040\076\040\142\157\170\056\163\164\141\162\164" + "\072\144\151\162\050\154\164\162\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156" + "\144\154\145\040\076\040\142\157\170\040\076\040\167\151\144\147" + "\145\164\040\076\040\142\157\170\056\145\156\144\072\144\151\162" + "\050\162\164\154\051\040\173\040\155\141\162\147\151\156\055\162" + "\151\147\150\164\072\040\066\160\170\073\040\175\012\012\150\145" + "\141\144\145\162\142\141\162\040\076\040\167\151\156\144\157\167" + "\150\141\156\144\154\145\040\076\040\142\157\170\040\076\040\142" + "\157\170\056\163\164\141\162\164\072\144\151\162\050\162\164\154" + "\051\054\040\150\145\141\144\145\162\142\141\162\040\076\040\167" + "\151\156\144\157\167\150\141\156\144\154\145\040\076\040\142\157" + "\170\040\076\040\142\157\170\056\145\156\144\072\144\151\162\050" + "\154\164\162\051\054\040\150\145\141\144\145\162\142\141\162\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076" + "\040\142\157\170\040\076\040\167\151\144\147\145\164\040\076\040" + "\142\157\170\056\163\164\141\162\164\072\144\151\162\050\162\164" + "\154\051\054\040\150\145\141\144\145\162\142\141\162\040\076\040" + "\167\151\156\144\157\167\150\141\156\144\154\145\040\076\040\142" + "\157\170\040\076\040\167\151\144\147\145\164\040\076\040\142\157" + "\170\056\145\156\144\072\144\151\162\050\154\164\162\051\040\173" + "\040\155\141\162\147\151\156\055\154\145\146\164\072\040\066\160" + "\170\073\040\175\012\012\150\145\141\144\145\162\142\141\162\072" + "\142\141\143\153\144\162\157\160\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\100\150\145" + "\141\144\145\162\142\141\162\137\142\141\143\153\144\162\157\160" + "\137\143\157\154\157\162\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\040\062\060\060\155\163\040\145\141\163\145\055" + "\157\165\164\073\040\175\012\012\150\145\141\144\145\162\142\141" + "\162\072\142\141\143\153\144\162\157\160\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\173\040\146\151\154\164" + "\145\162\072\040\157\160\141\143\151\164\171\050\060\056\065\051" + "\073\040\164\162\141\156\163\151\164\151\157\156\072\040\146\151" + "\154\164\145\162\040\062\060\060\155\163\040\145\141\163\145\055" + "\157\165\164\073\040\175\012\012\150\145\141\144\145\162\142\141" + "\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141" + "\164\151\157\156\040\173\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\063\067\160\170\073\040\175\012\012\150\145\141\144" + "\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144\145" + "\143\157\162\141\164\151\157\156\040\076\040\167\151\156\144\157" + "\167\150\141\156\144\154\145\040\076\040\142\157\170\040\173\040" + "\160\141\144\144\151\156\147\072\040\063\160\170\040\064\160\170" + "\040\064\160\170\040\064\160\170\073\040\175\012\012\150\145\141" + "\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144" + "\145\143\157\162\141\164\151\157\156\040\167\151\156\144\157\167" + "\143\157\156\164\162\157\154\163\040\076\040\142\165\164\164\157" + "\156\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\062\062\160\170\073\040\155\151\156\055\167\151\144\164\150\072" + "\040\062\062\160\170\073\040\160\141\144\144\151\156\147\072\040" + "\064\160\170\073\040\175\012\012\150\145\141\144\145\162\142\141" + "\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141" + "\164\151\157\156\040\167\151\156\144\157\167\143\157\156\164\162" + "\157\154\163\040\076\040\056\151\143\157\156\040\173\040\155\141" + "\162\147\151\156\072\040\067\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\040\076\040\056\164\151\164\154\145\142\141\162" + "\072\156\157\164\050\056\146\154\141\164\051\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\060\040\061\160\170\040" + "\141\154\160\150\141\050\100\150\145\141\144\145\162\142\141\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\065" + "\051\054\040\060\040\062\160\170\040\064\160\170\040\141\154\160" + "\150\141\050\100\150\145\141\144\145\162\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\065\051\073\040" + "\175\012\012\167\151\156\144\157\167\040\076\040\056\164\151\164" + "\154\145\142\141\162\040\150\145\141\144\145\162\142\141\162\072" + "\156\157\164\050\056\146\154\141\164\051\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\061" + "\160\170\040\060\040\141\154\160\150\141\050\100\150\145\141\144" + "\145\162\142\141\162\137\142\157\162\144\145\162\137\143\157\154" + "\157\162\054\060\056\061\065\051\054\040\151\156\163\145\164\040" + "\055\061\160\170\040\060\040\141\154\160\150\141\050\100\150\145" + "\141\144\145\162\142\141\162\137\142\157\162\144\145\162\137\143" + "\157\154\157\162\054\060\056\061\065\051\073\040\175\012\012\167" + "\151\156\144\157\167\040\076\040\150\145\141\144\145\162\142\141" + "\162\056\164\151\164\154\145\142\141\162\054\040\167\151\156\144" + "\157\167\040\076\040\056\164\151\164\154\145\142\141\162\040\150" + "\145\141\144\145\162\142\141\162\040\173\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\064\066\160\170\073\040\175\012\012" + "\167\151\156\144\157\167\040\076\040\150\145\141\144\145\162\142" + "\141\162\056\164\151\164\154\145\142\141\162\040\076\040\167\151" + "\156\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170" + "\054\040\167\151\156\144\157\167\040\076\040\056\164\151\164\154" + "\145\142\141\162\040\150\145\141\144\145\162\142\141\162\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076\040" + "\142\157\170\040\173\040\160\141\144\144\151\156\147\055\142\157" + "\164\164\157\155\072\040\066\160\170\073\040\175\012\012\167\151" + "\156\144\157\167\040\076\040\150\145\141\144\145\162\142\141\162" + "\056\164\151\164\154\145\142\141\162\056\144\145\146\141\165\154" + "\164\055\144\145\143\157\162\141\164\151\157\156\054\040\167\151" + "\156\144\157\167\040\076\040\056\164\151\164\154\145\142\141\162" + "\040\150\145\141\144\145\162\142\141\162\056\144\145\146\141\165" + "\154\164\055\144\145\143\157\162\141\164\151\157\156\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\063\066\160\170" + "\073\040\175\012\012\167\151\156\144\157\167\040\076\040\150\145" + "\141\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162" + "\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164" + "\151\157\156\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\054\040\167\151\156\144\157\167" + "\040\076\040\056\164\151\164\154\145\142\141\162\040\150\145\141" + "\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144" + "\145\143\157\162\141\164\151\157\156\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\040\173" + "\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072" + "\040\063\160\170\073\040\175\012\012\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162\040" + "\150\145\141\144\145\162\142\141\162\054\040\164\157\157\154\142" + "\141\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155" + "\055\142\141\162\040\150\145\141\144\145\162\142\141\162\054\040" + "\150\145\141\144\145\162\142\141\162\056\146\154\141\164\054\040" + "\167\151\156\144\157\167\056\163\150\157\162\164\143\165\164\163" + "\040\150\145\141\144\145\162\142\141\162\056\164\151\164\154\145" + "\142\141\162\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\150\145\141\144\145\162\142\141\162\056\164\151\164\154" + "\145\142\141\162\054\040\167\151\156\144\157\167\056\160\141\147" + "\145\163\145\164\165\160\040\150\145\141\144\145\162\142\141\162" + "\056\164\151\164\154\145\142\141\162\054\040\167\151\156\144\157" + "\167\056\141\142\157\165\164\144\151\141\154\157\147\040\150\145" + "\141\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162" + "\054\040\167\151\156\144\157\167\056\143\157\154\157\162\143\150" + "\157\157\163\145\162\040\150\145\141\144\145\162\142\141\162\056" + "\164\151\164\154\145\142\141\162\054\040\167\151\156\144\157\167" + "\056\141\160\160\143\150\157\157\163\145\162\040\150\145\141\144" + "\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156" + "\145\073\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\143\157\154\157\162\072\040\151\156\150\145" + "\162\151\164\073\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\064\066\160\170\073\040\175\012\012\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162" + "\040\150\145\141\144\145\162\142\141\162\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054" + "\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056" + "\142\157\164\164\157\155\055\142\141\162\040\150\145\141\144\145" + "\162\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156" + "\144\154\145\040\076\040\142\157\170\054\040\150\145\141\144\145" + "\162\142\141\162\056\146\154\141\164\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\167\151\156\144\157\167\056\163\150\157\162\164\143\165\164\163" + "\040\150\145\141\144\145\162\142\141\162\056\164\151\164\154\145" + "\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\054\040\167\151\156\144\157\167" + "\056\160\162\151\156\164\040\150\145\141\144\145\162\142\141\162" + "\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\167\151\156\144\157\167\056\160\141\147\145\163\145\164\165\160" + "\040\150\145\141\144\145\162\142\141\162\056\164\151\164\154\145" + "\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\054\040\167\151\156\144\157\167" + "\056\141\142\157\165\164\144\151\141\154\157\147\040\150\145\141" + "\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076" + "\040\142\157\170\054\040\167\151\156\144\157\167\056\143\157\154" + "\157\162\143\150\157\157\163\145\162\040\150\145\141\144\145\162" + "\142\141\162\056\164\151\164\154\145\142\141\162\040\076\040\167" + "\151\156\144\157\167\150\141\156\144\154\145\040\076\040\142\157" + "\170\054\040\167\151\156\144\157\167\056\141\160\160\143\150\157" + "\157\163\145\162\040\150\145\141\144\145\162\142\141\162\056\164" + "\151\164\154\145\142\141\162\040\076\040\167\151\156\144\157\167" + "\150\141\156\144\154\145\040\076\040\142\157\170\040\173\040\160" + "\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040\066" + "\160\170\073\040\175\012\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\150\145" + "\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055" + "\144\145\143\157\162\141\164\151\157\156\054\040\164\157\157\154" + "\142\141\162\166\151\145\167\040\076\040\056\142\157\164\164\157" + "\155\055\142\141\162\040\150\145\141\144\145\162\142\141\162\056" + "\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151" + "\157\156\054\040\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\056\146\154\141\164\054\040\167\151\156\144\157\167\056\163\150" + "\157\162\164\143\165\164\163\040\150\145\141\144\145\162\142\141" + "\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141" + "\164\151\157\156\056\164\151\164\154\145\142\141\162\054\040\167" + "\151\156\144\157\167\056\160\162\151\156\164\040\150\145\141\144" + "\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144\145" + "\143\157\162\141\164\151\157\156\056\164\151\164\154\145\142\141" + "\162\054\040\167\151\156\144\157\167\056\160\141\147\145\163\145" + "\164\165\160\040\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\056\164\151\164\154\145\142\141\162\054\040\167\151\156\144\157" + "\167\056\141\142\157\165\164\144\151\141\154\157\147\040\150\145" + "\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055" + "\144\145\143\157\162\141\164\151\157\156\056\164\151\164\154\145" + "\142\141\162\054\040\167\151\156\144\157\167\056\143\157\154\157" + "\162\143\150\157\157\163\145\162\040\150\145\141\144\145\162\142" + "\141\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162" + "\141\164\151\157\156\056\164\151\164\154\145\142\141\162\054\040" + "\167\151\156\144\157\167\056\141\160\160\143\150\157\157\163\145" + "\162\040\150\145\141\144\145\162\142\141\162\056\144\145\146\141" + "\165\154\164\055\144\145\143\157\162\141\164\151\157\156\056\164" + "\151\164\154\145\142\141\162\040\173\040\155\151\156\055\150\145" + "\151\147\150\164\072\040\063\066\160\170\073\040\175\012\012\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\040\150\145\141\144\145\162\142\141\162\056" + "\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151" + "\157\156\040\076\040\167\151\156\144\157\167\150\141\156\144\154" + "\145\040\076\040\142\157\170\054\040\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142" + "\141\162\040\150\145\141\144\145\162\142\141\162\056\144\145\146" + "\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076" + "\040\142\157\170\054\040\150\145\141\144\145\162\142\141\162\056" + "\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151" + "\157\156\056\146\154\141\164\040\076\040\167\151\156\144\157\167" + "\150\141\156\144\154\145\040\076\040\142\157\170\054\040\167\151" + "\156\144\157\167\056\163\150\157\162\164\143\165\164\163\040\150" + "\145\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164" + "\055\144\145\143\157\162\141\164\151\157\156\056\164\151\164\154" + "\145\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156" + "\144\154\145\040\076\040\142\157\170\054\040\167\151\156\144\157" + "\167\056\160\162\151\156\164\040\150\145\141\144\145\162\142\141" + "\162\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141" + "\164\151\157\156\056\164\151\164\154\145\142\141\162\040\076\040" + "\167\151\156\144\157\167\150\141\156\144\154\145\040\076\040\142" + "\157\170\054\040\167\151\156\144\157\167\056\160\141\147\145\163" + "\145\164\165\160\040\150\145\141\144\145\162\142\141\162\056\144" + "\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157" + "\156\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054" + "\040\167\151\156\144\157\167\056\141\142\157\165\164\144\151\141" + "\154\157\147\040\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\167\151\156\144\157\167\056\143\157\154\157\162\143\150\157\157" + "\163\145\162\040\150\145\141\144\145\162\142\141\162\056\144\145" + "\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157\156" + "\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\167\151\156\144\157\167\056\141\160\160\143\150\157\157\163\145" + "\162\040\150\145\141\144\145\162\142\141\162\056\144\145\146\141" + "\165\154\164\055\144\145\143\157\162\141\164\151\157\156\056\164" + "\151\164\154\145\142\141\162\040\076\040\167\151\156\144\157\167" + "\150\141\156\144\154\145\040\076\040\142\157\170\040\173\040\160" + "\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040\063" + "\160\170\073\040\175\012\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\150\145" + "\141\144\145\162\142\141\162\072\142\141\143\153\144\162\157\160" + "\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\142\157\164\164\157\155\055\142\141\162\040\150\145\141\144" + "\145\162\142\141\162\072\142\141\143\153\144\162\157\160\040\173" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\156\157\156" + "\145\073\040\175\012\012\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\164\157\160\055\142\141\162\040\150\145\141" + "\144\145\162\142\141\162\072\142\141\143\153\144\162\157\160\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\054\040" + "\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142" + "\157\164\164\157\155\055\142\141\162\040\150\145\141\144\145\162" + "\142\141\162\072\142\141\143\153\144\162\157\160\040\076\040\167" + "\151\156\144\157\167\150\141\156\144\154\145\040\173\040\146\151" + "\154\164\145\162\072\040\156\157\156\145\073\040\164\162\141\156" + "\163\151\164\151\157\156\072\040\156\157\156\145\073\040\175\012" + "\012\167\151\156\144\157\167\056\144\145\166\145\154\040\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157\160" + "\055\142\141\162\040\150\145\141\144\145\162\142\141\162\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\040\167\151\156\144\157\167\056\144\145\166" + "\145\154\040\150\145\141\144\145\162\142\141\162\040\076\040\167" + "\151\156\144\157\167\150\141\156\144\154\145\054\040\167\151\156" + "\144\157\167\056\144\145\166\145\154\040\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055" + "\142\141\162\040\150\145\141\144\145\162\142\141\162\040\076\040" + "\167\151\156\144\157\167\150\141\156\144\154\145\054\040\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157\164" + "\164\157\155\055\142\141\162\040\167\151\156\144\157\167\056\144" + "\145\166\145\154\040\150\145\141\144\145\162\142\141\162\040\076" + "\040\167\151\156\144\157\167\150\141\156\144\154\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145" + "\072\040\156\157\156\145\073\040\175\012\012\164\157\157\154\142" + "\141\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141" + "\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143" + "\151\156\147\040\150\145\141\144\145\162\142\141\162\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157" + "\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141\160" + "\163\145\055\163\160\141\143\151\156\147\040\150\145\141\144\145" + "\162\142\141\162\054\040\167\151\156\144\157\167\056\163\150\157" + "\162\164\143\165\164\163\040\150\145\141\144\145\162\142\141\162" + "\056\164\151\164\154\145\142\141\162\054\040\167\151\156\144\157" + "\167\056\141\160\160\143\150\157\157\163\145\162\040\150\145\141" + "\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040" + "\173\040\155\151\156\055\150\145\151\147\150\164\072\040\064\060" + "\160\170\073\040\175\012\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\056\143" + "\157\154\154\141\160\163\145\055\163\160\141\143\151\156\147\040" + "\150\145\141\144\145\162\142\141\162\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142" + "\157\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141" + "\160\163\145\055\163\160\141\143\151\156\147\040\150\145\141\144" + "\145\162\142\141\162\040\076\040\167\151\156\144\157\167\150\141" + "\156\144\154\145\040\076\040\142\157\170\054\040\167\151\156\144" + "\157\167\056\163\150\157\162\164\143\165\164\163\040\150\145\141" + "\144\145\162\142\141\162\056\164\151\164\154\145\142\141\162\040" + "\076\040\167\151\156\144\157\167\150\141\156\144\154\145\040\076" + "\040\142\157\170\054\040\167\151\156\144\157\167\056\141\160\160" + "\143\150\157\157\163\145\162\040\150\145\141\144\145\162\142\141" + "\162\056\164\151\164\154\145\142\141\162\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\076\040\142\157\170\040" + "\173\040\160\141\144\144\151\156\147\055\164\157\160\072\040\063" + "\160\170\073\040\160\141\144\144\151\156\147\055\142\157\164\164" + "\157\155\072\040\063\160\170\073\040\175\012\012\164\157\157\154" + "\142\141\162\166\151\145\167\040\076\040\056\164\157\160\055\142" + "\141\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141" + "\143\151\156\147\040\150\145\141\144\145\162\142\141\162\056\144" + "\145\146\141\165\154\164\055\144\145\143\157\162\141\164\151\157" + "\156\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076" + "\040\056\142\157\164\164\157\155\055\142\141\162\040\056\143\157" + "\154\154\141\160\163\145\055\163\160\141\143\151\156\147\040\150" + "\145\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164" + "\055\144\145\143\157\162\141\164\151\157\156\054\040\167\151\156" + "\144\157\167\056\163\150\157\162\164\143\165\164\163\040\150\145" + "\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055" + "\144\145\143\157\162\141\164\151\157\156\056\164\151\164\154\145" + "\142\141\162\054\040\167\151\156\144\157\167\056\141\160\160\143" + "\150\157\157\163\145\162\040\150\145\141\144\145\162\142\141\162" + "\056\144\145\146\141\165\154\164\055\144\145\143\157\162\141\164" + "\151\157\156\056\164\151\164\154\145\142\141\162\040\173\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\063\060\160\170\073" + "\040\175\012\012\164\157\157\154\142\141\162\166\151\145\167\040" + "\076\040\056\164\157\160\055\142\141\162\040\056\143\157\154\154" + "\141\160\163\145\055\163\160\141\143\151\156\147\040\150\145\141" + "\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144" + "\145\143\157\162\141\164\151\157\156\040\076\040\167\151\156\144" + "\157\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040" + "\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142" + "\157\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141" + "\160\163\145\055\163\160\141\143\151\156\147\040\150\145\141\144" + "\145\162\142\141\162\056\144\145\146\141\165\154\164\055\144\145" + "\143\157\162\141\164\151\157\156\040\076\040\167\151\156\144\157" + "\167\150\141\156\144\154\145\040\076\040\142\157\170\054\040\167" + "\151\156\144\157\167\056\163\150\157\162\164\143\165\164\163\040" + "\150\145\141\144\145\162\142\141\162\056\144\145\146\141\165\154" + "\164\055\144\145\143\157\162\141\164\151\157\156\056\164\151\164" + "\154\145\142\141\162\040\076\040\167\151\156\144\157\167\150\141" + "\156\144\154\145\040\076\040\142\157\170\054\040\167\151\156\144" + "\157\167\056\141\160\160\143\150\157\157\163\145\162\040\150\145" + "\141\144\145\162\142\141\162\056\144\145\146\141\165\154\164\055" + "\144\145\143\157\162\141\164\151\157\156\056\164\151\164\154\145" + "\142\141\162\040\076\040\167\151\156\144\157\167\150\141\156\144" + "\154\145\040\076\040\142\157\170\040\173\040\160\141\144\144\151" + "\156\147\055\164\157\160\072\040\060\160\170\073\040\160\141\144" + "\144\151\156\147\055\142\157\164\164\157\155\072\040\060\160\170" + "\073\040\175\012\012\056\164\151\164\154\145\142\141\162\072\156" + "\157\164\050\150\145\141\144\145\162\142\141\162\051\040\163\145" + "\160\141\162\141\164\157\162\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\100\150\145\141\144\145\162\142\141\162\137\142\157\162" + "\144\145\162\137\143\157\154\157\162\054\060\056\061\065\051\073" + "\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\040\107\164\153\127\151" + "\156\144\157\167\103\157\156\164\162\157\154\163\040\052\040\052" + "\057\012\167\151\156\144\157\167\143\157\156\164\162\157\154\163" + "\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156" + "\147\072\040\063\160\170\073\040\175\012\012\167\151\156\144\157" + "\167\143\157\156\164\162\157\154\163\040\076\040\142\165\164\164" + "\157\156\040\173\040\155\151\156\055\167\151\144\164\150\072\040" + "\062\064\160\170\073\040\160\141\144\144\151\156\147\072\040\065" + "\160\170\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\156\157\156\145\073\040\175\012\012\167\151\156\144\157\167\143" + "\157\156\164\162\157\154\163\040\076\040\142\165\164\164\157\156" + "\040\076\040\151\155\141\147\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\051\073\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\061\060\060\045\073\040\160\141\144\144\151" + "\156\147\072\040\062\160\170\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\142\141\143\153\147\162\157\165\156\144\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\142\157\170\055" + "\163\150\141\144\157\167\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\073\040\175\012\012\167\151\156\144\157\167\143\157\156\164" + "\162\157\154\163\040\076\040\142\165\164\164\157\156\054\040\167" + "\151\156\144\157\167\143\157\156\164\162\157\154\163\040\076\040" + "\142\165\164\164\157\156\072\150\157\166\145\162\054\040\167\151" + "\156\144\157\167\143\157\156\164\162\157\154\163\040\076\040\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145\073" + "\040\175\012\012\167\151\156\144\157\167\143\157\156\164\162\157" + "\154\163\040\076\040\142\165\164\164\157\156\072\150\157\166\145" + "\162\040\076\040\151\155\141\147\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\065\051\073\040\175\012\012\167\151\156\144\157" + "\167\143\157\156\164\162\157\154\163\040\076\040\142\165\164\164" + "\157\156\072\141\143\164\151\166\145\040\076\040\151\155\141\147" + "\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\063\051\073\040\175" + "\012\012\167\151\156\144\157\167\143\157\156\164\162\157\154\163" + "\040\076\040\056\151\143\157\156\040\173\040\155\141\162\147\151" + "\156\072\040\071\160\170\073\040\175\012\012\057\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040\101" + "\144\167\127\151\156\144\157\167\124\151\164\154\145\040\052\040" + "\052\057\012\150\145\141\144\145\162\142\141\162\040\056\164\151" + "\164\154\145\054\040\167\151\156\144\157\167\164\151\164\154\145" + "\040\056\164\151\164\154\145\040\173\040\160\141\144\144\151\156" + "\147\055\154\145\146\164\072\040\061\062\160\170\073\040\160\141" + "\144\144\151\156\147\055\162\151\147\150\164\072\040\061\062\160" + "\170\073\040\146\157\156\164\055\167\145\151\147\150\164\072\040" + "\142\157\154\144\073\040\175\012\012\150\145\141\144\145\162\142" + "\141\162\040\056\163\165\142\164\151\164\154\145\054\040\167\151" + "\156\144\157\167\164\151\164\154\145\040\056\163\165\142\164\151" + "\164\154\145\040\173\040\146\157\156\164\055\163\151\172\145\072" + "\040\163\155\141\154\154\145\162\073\040\160\141\144\144\151\156" + "\147\055\154\145\146\164\072\040\061\062\160\170\073\040\160\141" + "\144\144\151\156\147\055\162\151\147\150\164\072\040\061\062\160" + "\170\073\040\175\012\012\167\151\156\144\157\167\164\151\164\154" + "\145\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\055\066\160\170\073\040\155\141\162\147\151\156\055\142\157\164" + "\164\157\155\072\040\055\066\160\170\073\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\061\062\160\170\073\040\175\012\012" + "\167\151\156\144\157\167\056\144\145\166\145\154\040\150\145\141" + "\144\145\162\142\141\162\040\076\040\167\151\156\144\157\167\150" + "\141\156\144\154\145\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\151\155\141\147\145\072\040\143\162\157\163\163\055" + "\146\141\144\145\050\065\045\040\055\147\164\153\055\162\145\143" + "\157\154\157\162\050\165\162\154\050\042\141\163\163\145\164\163" + "\057\144\145\166\145\154\055\163\171\155\142\157\154\151\143\056" + "\163\166\147\042\051\051\054\040\151\155\141\147\145\050\164\162" + "\141\156\163\160\141\162\145\156\164\051\051\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\162\145\160\145\141\164\072\040" + "\162\145\160\145\141\164\055\170\073\040\175\012\012\167\151\156" + "\144\157\167\056\144\145\166\145\154\040\144\151\141\154\157\147" + "\040\150\145\141\144\145\162\142\141\162\040\076\040\167\151\156" + "\144\157\167\150\141\156\144\154\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\165\156" + "\163\145\164\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\162\145\160\145\141\164\072\040\165\156\163\145\164\073\040\175" + "\012\012\154\141\142\145\154\040\173\040\143\141\162\145\164\055" + "\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103\157" + "\154\157\162\073\040\175\012\012\154\141\142\145\154\072\144\151" + "\163\141\142\154\145\144\040\173\040\146\151\154\164\145\162\072" + "\040\157\160\141\143\151\164\171\050\060\056\065\051\073\040\175" + "\012\012\056\144\151\155\055\154\141\142\145\154\054\040\163\143" + "\141\154\145\040\076\040\166\141\154\165\145\054\040\160\162\157" + "\147\162\145\163\163\142\141\162\040\076\040\164\145\170\164\054" + "\040\162\157\167\056\145\170\160\141\156\144\145\162\040\151\155" + "\141\147\145\056\145\170\160\141\156\144\145\162\055\162\157\167" + "\055\141\162\162\157\167\054\040\162\157\167\056\160\162\157\160" + "\145\162\164\171\040\076\040\142\157\170\056\150\145\141\144\145" + "\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040" + "\056\164\151\164\154\145\054\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\056\160\162\157\160\145\162\164\171\040\142\157" + "\170\040\076\040\154\151\163\164\040\076\040\162\157\167\040\076" + "\040\142\157\170\056\150\145\141\144\145\162\040\076\040\142\157" + "\170\056\164\151\164\154\145\040\076\040\056\164\151\164\154\145" + "\054\040\162\157\167\040\154\141\142\145\154\056\163\165\142\164" + "\151\164\154\145\054\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\164\145\170\164\040\076\040\160\154\141\143\145\150" + "\157\154\144\145\162\054\040\145\156\164\162\171\040\076\040\164" + "\145\170\164\040\076\040\160\154\141\143\145\150\157\154\144\145" + "\162\054\040\150\145\141\144\145\162\142\141\162\040\056\163\165" + "\142\164\151\164\154\145\054\040\167\151\156\144\157\167\164\151" + "\164\154\145\040\056\163\165\142\164\151\164\154\145\054\040\154" + "\141\142\145\154\056\163\145\160\141\162\141\164\157\162\040\173" + "\040\157\160\141\143\151\164\171\072\040\060\056\065\065\073\040" + "\175\012\012\056\141\143\143\145\156\164\040\173\040\143\157\154" + "\157\162\072\040\100\141\143\143\145\156\164\137\143\157\154\157" + "\162\073\040\175\012\012\056\163\165\143\143\145\163\163\040\173" + "\040\143\157\154\157\162\072\040\100\163\165\143\143\145\163\163" + "\137\143\157\154\157\162\073\040\175\012\012\056\167\141\162\156" + "\151\156\147\040\173\040\143\157\154\157\162\072\040\100\167\141" + "\162\156\151\156\147\137\143\157\154\157\162\073\040\175\012\012" + "\056\145\162\162\157\162\040\173\040\143\157\154\157\162\072\040" + "\100\145\162\162\157\162\137\143\157\154\157\162\073\040\175\012" + "\012\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\040\107\145\156\145\162\141\154" + "\040\124\171\160\157\147\162\141\160\150\171\040\052\040\052\057" + "\012\056\164\151\164\154\145\055\061\040\173\040\146\157\156\164" + "\055\167\145\151\147\150\164\072\040\070\060\060\073\040\146\157" + "\156\164\055\163\151\172\145\072\040\062\060\160\164\073\040\175" + "\012\012\056\164\151\164\154\145\055\062\040\173\040\146\157\156" + "\164\055\167\145\151\147\150\164\072\040\070\060\060\073\040\146" + "\157\156\164\055\163\151\172\145\072\040\061\065\160\164\073\040" + "\175\012\012\056\164\151\164\154\145\055\063\040\173\040\146\157" + "\156\164\055\167\145\151\147\150\164\072\040\067\060\060\073\040" + "\146\157\156\164\055\163\151\172\145\072\040\061\065\160\164\073" + "\040\175\012\012\056\164\151\164\154\145\055\064\040\173\040\146" + "\157\156\164\055\167\145\151\147\150\164\072\040\067\060\060\073" + "\040\146\157\156\164\055\163\151\172\145\072\040\061\063\160\164" + "\073\040\175\012\012\056\150\145\141\144\151\156\147\054\040\154" + "\151\163\164\166\151\145\167\040\076\040\150\145\141\144\145\162" + "\040\173\040\146\157\156\164\055\167\145\151\147\150\164\072\040" + "\067\060\060\073\040\146\157\156\164\055\163\151\172\145\072\040" + "\061\061\160\164\073\040\175\012\012\056\142\157\144\171\040\173" + "\040\146\157\156\164\055\167\145\151\147\150\164\072\040\064\060" + "\060\073\040\146\157\156\164\055\163\151\172\145\072\040\061\061" + "\160\164\073\040\175\012\012\056\143\141\160\164\151\157\156\055" + "\150\145\141\144\151\156\147\040\173\040\146\157\156\164\055\167" + "\145\151\147\150\164\072\040\067\060\060\073\040\146\157\156\164" + "\055\163\151\172\145\072\040\071\160\164\073\040\175\012\012\056" + "\143\141\160\164\151\157\156\040\173\040\146\157\156\164\055\167" + "\145\151\147\150\164\072\040\064\060\060\073\040\146\157\156\164" + "\055\163\151\172\145\072\040\071\160\164\073\040\175\012\012\056" + "\155\157\156\157\163\160\141\143\145\040\173\040\146\157\156\164" + "\055\146\141\155\151\154\171\072\040\155\157\156\157\163\160\141" + "\143\145\073\040\175\012\012\056\156\165\155\145\162\151\143\054" + "\040\163\160\151\156\142\165\164\164\157\156\054\040\163\143\141" + "\154\145\040\076\040\166\141\154\165\145\054\040\160\162\157\147" + "\162\145\163\163\142\141\162\040\076\040\164\145\170\164\040\173" + "\040\146\157\156\164\055\146\145\141\164\165\162\145\055\163\145" + "\164\164\151\156\147\163\072\040\042\164\156\165\155\042\073\040" + "\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\040\105\144\151\164\141\142\154\145" + "\040\114\141\142\145\154\163\040\052\040\052\057\012\145\144\151" + "\164\141\142\154\145\154\141\142\145\154\040\076\040\163\164\141" + "\143\153\040\076\040\164\145\170\164\040\173\040\143\157\154\157" + "\162\072\040\100\166\151\145\167\137\146\147\137\143\157\154\157" + "\162\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\100\166\151\145\167\137\142\147\137\143\157" + "\154\157\162\073\040\175\012\012\154\145\166\145\154\142\141\162" + "\072\144\151\163\141\142\154\145\144\040\173\040\146\151\154\164" + "\145\162\072\040\157\160\141\143\151\164\171\050\060\056\065\051" + "\073\040\175\012\012\154\145\166\145\154\142\141\162\056\150\157" + "\162\151\172\157\156\164\141\154\040\164\162\157\165\147\150\040" + "\076\040\142\154\157\143\153\040\173\040\155\151\156\055\150\145" + "\151\147\150\164\072\040\070\160\170\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\071\071\160\170\073\040" + "\175\012\012\154\145\166\145\154\142\141\162\056\150\157\162\151" + "\172\157\156\164\141\154\040\164\162\157\165\147\150\040\076\040" + "\142\154\157\143\153\056\145\155\160\164\171\054\040\154\145\166" + "\145\154\142\141\162\056\150\157\162\151\172\157\156\164\141\154" + "\040\164\162\157\165\147\150\040\076\040\142\154\157\143\153\056" + "\146\165\154\154\040\173\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\071\071\160\170\073\040\175\012\012\154" + "\145\166\145\154\142\141\162\056\150\157\162\151\172\157\156\164" + "\141\154\056\144\151\163\143\162\145\164\145\040\076\040\164\162" + "\157\165\147\150\040\076\040\142\154\157\143\153\040\173\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\070\160\170\073\040" + "\155\141\162\147\151\156\055\162\151\147\150\164\072\040\062\160" + "\170\073\040\155\151\156\055\167\151\144\164\150\072\040\062\066" + "\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\060\073\040\175\012\012\154\145\166\145\154\142\141" + "\162\056\150\157\162\151\172\157\156\164\141\154\056\144\151\163" + "\143\162\145\164\145\040\076\040\164\162\157\165\147\150\040\076" + "\040\142\154\157\143\153\072\146\151\162\163\164\055\143\150\151" + "\154\144\040\173\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\071\071\160\170\040\060\040\060\040\071\071\160" + "\170\073\040\175\012\012\154\145\166\145\154\142\141\162\056\150" + "\157\162\151\172\157\156\164\141\154\056\144\151\163\143\162\145" + "\164\145\040\076\040\164\162\157\165\147\150\040\076\040\142\154" + "\157\143\153\072\154\141\163\164\055\143\150\151\154\144\040\173" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\060\040\071\071\160\170\040\071\071\160\170\040\060\073\040\155" + "\141\162\147\151\156\055\162\151\147\150\164\072\040\060\073\040" + "\175\012\012\154\145\166\145\154\142\141\162\056\166\145\162\164" + "\151\143\141\154\040\164\162\157\165\147\150\040\076\040\142\154" + "\157\143\153\040\173\040\155\151\156\055\167\151\144\164\150\072" + "\040\070\160\170\073\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\071\071\160\170\073\040\175\012\012\154\145" + "\166\145\154\142\141\162\056\166\145\162\164\151\143\141\154\040" + "\164\162\157\165\147\150\040\076\040\142\154\157\143\153\056\145" + "\155\160\164\171\054\040\154\145\166\145\154\142\141\162\056\166" + "\145\162\164\151\143\141\154\040\164\162\157\165\147\150\040\076" + "\040\142\154\157\143\153\056\146\165\154\154\040\173\040\142\157" + "\162\144\145\162\055\162\141\144\151\165\163\072\040\071\071\160" + "\170\073\040\175\012\012\154\145\166\145\154\142\141\162\056\166" + "\145\162\164\151\143\141\154\056\144\151\163\143\162\145\164\145" + "\040\076\040\164\162\157\165\147\150\040\076\040\142\154\157\143" + "\153\040\173\040\155\151\156\055\167\151\144\164\150\072\040\070" + "\160\170\073\040\155\141\162\147\151\156\055\142\157\164\164\157" + "\155\072\040\062\160\170\073\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\062\066\160\170\073\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\060\073\040\175\012\012\154" + "\145\166\145\154\142\141\162\056\166\145\162\164\151\143\141\154" + "\056\144\151\163\143\162\145\164\145\040\076\040\164\162\157\165" + "\147\150\040\076\040\142\154\157\143\153\072\146\151\162\163\164" + "\055\143\150\151\154\144\040\173\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\071\071\160\170\040\071\071\160" + "\170\040\060\040\060\073\040\175\012\012\154\145\166\145\154\142" + "\141\162\056\166\145\162\164\151\143\141\154\056\144\151\163\143" + "\162\145\164\145\040\076\040\164\162\157\165\147\150\040\076\040" + "\142\154\157\143\153\072\154\141\163\164\055\143\150\151\154\144" + "\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\060\040\060\040\071\071\160\170\040\071\071\160\170\073" + "\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040" + "\060\073\040\175\012\012\154\145\166\145\154\142\141\162\040\076" + "\040\164\162\157\165\147\150\040\173\040\160\141\144\144\151\156" + "\147\072\040\060\073\040\175\012\012\154\145\166\145\154\142\141" + "\162\040\076\040\164\162\157\165\147\150\040\076\040\142\154\157" + "\143\153\056\154\157\167\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\100\167\141\162\156" + "\151\156\147\137\142\147\137\143\157\154\157\162\073\040\175\012" + "\012\154\145\166\145\154\142\141\162\040\076\040\164\162\157\165" + "\147\150\040\076\040\142\154\157\143\153\056\150\151\147\150\054" + "\040\154\145\166\145\154\142\141\162\040\076\040\164\162\157\165" + "\147\150\040\076\040\142\154\157\143\153\072\156\157\164\050\056" + "\145\155\160\164\171\051\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\100\141\143\143\145" + "\156\164\137\142\147\137\143\157\154\157\162\073\040\175\012\012" + "\154\145\166\145\154\142\141\162\040\076\040\164\162\157\165\147" + "\150\040\076\040\142\154\157\143\153\056\146\165\154\154\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\100\163\165\143\143\145\163\163\137\142\147\137\143" + "\157\154\157\162\073\040\175\012\012\154\145\166\145\154\142\141" + "\162\040\076\040\164\162\157\165\147\150\040\076\040\142\154\157" + "\143\153\056\145\155\160\164\171\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\065\051\073\040\175\012\012\056\157\163\144\040\154" + "\145\166\145\154\142\141\162\040\076\040\164\162\157\165\147\150" + "\040\076\040\142\154\157\143\153\056\150\151\147\150\054\040\056" + "\157\163\144\040\154\145\166\145\154\142\141\162\040\076\040\164" + "\162\157\165\147\150\040\076\040\142\154\157\143\153\072\156\157" + "\164\050\056\145\155\160\164\171\051\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\162\147" + "\142\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065" + "\054\040\060\056\067\065\051\073\040\175\012\012\056\154\151\156" + "\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141" + "\154\051\040\076\040\142\165\164\164\157\156\072\144\151\162\050" + "\154\164\162\051\072\156\157\164\050\072\146\151\162\163\164\055" + "\143\150\151\154\144\051\054\040\056\154\151\156\153\145\144\072" + "\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076" + "\040\142\165\164\164\157\156\072\144\151\162\050\162\164\154\051" + "\072\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144" + "\051\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154" + "\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040\142" + "\157\162\144\145\162\055\142\157\164\164\157\155\055\154\145\146" + "\164\055\162\141\144\151\165\163\072\040\060\073\040\155\141\162" + "\147\151\156\055\154\145\146\164\072\040\055\061\160\170\073\040" + "\175\012\012\056\154\151\156\153\145\144\072\156\157\164\050\056" + "\166\145\162\164\151\143\141\154\051\040\076\040\142\165\164\164" + "\157\156\072\144\151\162\050\154\164\162\051\072\156\157\164\050" + "\072\154\141\163\164\055\143\150\151\154\144\051\054\040\056\154" + "\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151" + "\143\141\154\051\040\076\040\142\165\164\164\157\156\072\144\151" + "\162\050\162\164\154\051\072\156\157\164\050\072\146\151\162\163" + "\164\055\143\150\151\154\144\051\040\173\040\142\157\162\144\145" + "\162\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\142\157\162\144\145\162\055\142\157" + "\164\164\157\155\055\162\151\147\150\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\175\012\012\056\154\151\156\153\145\144" + "\056\166\145\162\164\151\143\141\154\040\142\165\164\164\157\156" + "\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151\154" + "\144\051\040\173\040\142\157\162\144\145\162\055\164\157\160\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\142\157\162\144\145\162\055\164\157\160\055\162\151\147\150\164" + "\055\162\141\144\151\165\163\072\040\060\073\040\155\141\162\147" + "\151\156\055\164\157\160\072\040\055\061\160\170\073\040\175\012" + "\012\056\154\151\156\153\145\144\056\166\145\162\164\151\143\141" + "\154\040\142\165\164\164\157\156\072\156\157\164\050\072\154\141" + "\163\164\055\143\150\151\154\144\051\040\173\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151\156" + "\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141" + "\154\051\040\076\040\155\145\156\165\142\165\164\164\157\156\072" + "\144\151\162\050\154\164\162\051\072\156\157\164\050\072\146\151" + "\162\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164" + "\164\157\156\054\040\056\154\151\156\153\145\144\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\072\144\151\162\050\162\164\154" + "\051\072\156\157\164\050\072\154\141\163\164\055\143\150\151\154" + "\144\051\040\076\040\142\165\164\164\157\156\040\173\040\142\157" + "\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\155\141\162\147\151\156\055\154\145" + "\146\164\072\040\055\061\160\170\073\040\175\012\012\056\154\151" + "\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143" + "\141\154\051\040\076\040\155\145\156\165\142\165\164\164\157\156" + "\072\144\151\162\050\154\164\162\051\072\156\157\164\050\072\154" + "\141\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164" + "\164\157\156\054\040\056\154\151\156\153\145\144\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\155\145" + "\156\165\142\165\164\164\157\156\072\144\151\162\050\162\164\154" + "\051\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\162\151\147\150\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151" + "\156\153\145\144\056\166\145\162\164\151\143\141\154\040\155\145" + "\156\165\142\165\164\164\157\156\072\156\157\164\050\072\146\151" + "\162\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164" + "\164\157\156\040\173\040\142\157\162\144\145\162\055\164\157\160" + "\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147\150" + "\164\055\162\141\144\151\165\163\072\040\060\073\040\155\141\162" + "\147\151\156\055\164\157\160\072\040\055\061\160\170\073\040\175" + "\012\012\056\154\151\156\153\145\144\056\166\145\162\164\151\143" + "\141\154\040\155\145\156\165\142\165\164\164\157\156\072\156\157" + "\164\050\072\154\141\163\164\055\143\150\151\154\144\051\040\076" + "\040\142\165\164\164\157\156\040\173\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055\142" + "\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\175\012\012\056\154\151\156\153\145" + "\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051" + "\040\076\040\144\162\157\160\144\157\167\156\072\144\151\162\050" + "\154\164\162\051\072\156\157\164\050\072\146\151\162\163\164\055" + "\143\150\151\154\144\051\040\076\040\142\165\164\164\157\156\054" + "\040\056\154\151\156\153\145\144\072\156\157\164\050\056\166\145" + "\162\164\151\143\141\154\051\040\076\040\143\157\155\142\157\142" + "\157\170\072\144\151\162\050\154\164\162\051\072\156\157\164\050" + "\072\146\151\162\163\164\055\143\150\151\154\144\051\040\076\040" + "\142\165\164\164\157\156\054\040\056\154\151\156\153\145\144\072" + "\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076" + "\040\144\162\157\160\144\157\167\156\072\144\151\162\050\162\164" + "\154\051\072\156\157\164\050\072\154\141\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\054\040\056\154" + "\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151" + "\143\141\154\051\040\076\040\143\157\155\142\157\142\157\170\072" + "\144\151\162\050\162\164\154\051\072\156\157\164\050\072\154\141" + "\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164\164" + "\157\156\040\173\040\142\157\162\144\145\162\055\164\157\160\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\142\157\162\144\145\162\055\142\157\164\164\157\155\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\060\073\040\155\141" + "\162\147\151\156\055\154\145\146\164\072\040\055\061\160\170\073" + "\040\175\012\012\056\154\151\156\153\145\144\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\076\040\144\162\157" + "\160\144\157\167\156\072\144\151\162\050\154\164\162\051\072\156" + "\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051\040" + "\076\040\142\165\164\164\157\156\054\040\056\154\151\156\153\145" + "\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051" + "\040\076\040\143\157\155\142\157\142\157\170\072\144\151\162\050" + "\154\164\162\051\072\156\157\164\050\072\154\141\163\164\055\143" + "\150\151\154\144\051\040\076\040\142\165\164\164\157\156\054\040" + "\056\154\151\156\153\145\144\072\156\157\164\050\056\166\145\162" + "\164\151\143\141\154\051\040\076\040\144\162\157\160\144\157\167" + "\156\072\144\151\162\050\162\164\154\051\072\156\157\164\050\072" + "\146\151\162\163\164\055\143\150\151\154\144\051\040\076\040\142" + "\165\164\164\157\156\054\040\056\154\151\156\153\145\144\072\156" + "\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076\040" + "\143\157\155\142\157\142\157\170\072\144\151\162\050\162\164\154" + "\051\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\162\151\147\150\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151" + "\156\153\145\144\056\166\145\162\164\151\143\141\154\040\144\162" + "\157\160\144\157\167\156\072\156\157\164\050\072\146\151\162\163" + "\164\055\143\150\151\154\144\051\040\076\040\142\165\164\164\157" + "\156\054\040\056\154\151\156\153\145\144\056\166\145\162\164\151" + "\143\141\154\040\143\157\155\142\157\142\157\170\072\156\157\164" + "\050\072\146\151\162\163\164\055\143\150\151\154\144\051\040\076" + "\040\142\165\164\164\157\156\040\173\040\142\157\162\144\145\162" + "\055\164\157\160\055\154\145\146\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\142\157\162\144\145\162\055\164\157\160\055" + "\162\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\155\141\162\147\151\156\055\164\157\160\072\040\055\061\160" + "\170\073\040\175\012\012\056\154\151\156\153\145\144\056\166\145" + "\162\164\151\143\141\154\040\144\162\157\160\144\157\167\156\072" + "\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051" + "\040\076\040\142\165\164\164\157\156\054\040\056\154\151\156\153" + "\145\144\056\166\145\162\164\151\143\141\154\040\143\157\155\142" + "\157\142\157\170\072\156\157\164\050\072\154\141\163\164\055\143" + "\150\151\154\144\051\040\076\040\142\165\164\164\157\156\040\173" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\154" + "\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040\142" + "\157\162\144\145\162\055\142\157\164\164\157\155\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\060\073\040\175\012" + "\012\056\154\151\156\153\145\144\072\156\157\164\050\056\166\145" + "\162\164\151\143\141\154\051\040\076\040\143\157\154\157\162\142" + "\165\164\164\157\156\072\144\151\162\050\154\164\162\051\072\156" + "\157\164\050\072\146\151\162\163\164\055\143\150\151\154\144\051" + "\040\076\040\142\165\164\164\157\156\054\040\056\154\151\156\153" + "\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154" + "\051\040\076\040\143\157\154\157\162\142\165\164\164\157\156\072" + "\144\151\162\050\162\164\154\051\072\156\157\164\050\072\154\141" + "\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164\164" + "\157\156\040\173\040\142\157\162\144\145\162\055\164\157\160\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\142\157\162\144\145\162\055\142\157\164\164\157\155\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\060\073\040\155\141" + "\162\147\151\156\055\154\145\146\164\072\040\055\061\160\170\073" + "\040\175\012\012\056\154\151\156\153\145\144\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\076\040\143\157\154" + "\157\162\142\165\164\164\157\156\072\144\151\162\050\154\164\162" + "\051\072\156\157\164\050\072\154\141\163\164\055\143\150\151\154" + "\144\051\040\076\040\142\165\164\164\157\156\054\040\056\154\151" + "\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143" + "\141\154\051\040\076\040\143\157\154\157\162\142\165\164\164\157" + "\156\072\144\151\162\050\162\164\154\051\072\156\157\164\050\072" + "\146\151\162\163\164\055\143\150\151\154\144\051\040\076\040\142" + "\165\164\164\157\156\040\173\040\142\157\162\144\145\162\055\164" + "\157\160\055\162\151\147\150\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164\157" + "\155\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\175\012\012\056\154\151\156\153\145\144\056\166\145" + "\162\164\151\143\141\154\040\143\157\154\157\162\142\165\164\164" + "\157\156\072\156\157\164\050\072\146\151\162\163\164\055\143\150" + "\151\154\144\051\040\076\040\142\165\164\164\157\156\040\173\040" + "\142\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145" + "\162\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151" + "\165\163\072\040\060\073\040\155\141\162\147\151\156\055\164\157" + "\160\072\040\055\061\160\170\073\040\175\012\012\056\154\151\156" + "\153\145\144\056\166\145\162\164\151\143\141\154\040\143\157\154" + "\157\162\142\165\164\164\157\156\072\156\157\164\050\072\154\141" + "\163\164\055\143\150\151\154\144\051\040\076\040\142\165\164\164" + "\157\156\040\173\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\154\145\146\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\142\157\162\144\145\162\055\142\157\164\164\157\155" + "\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040\060" + "\073\040\175\012\012\056\154\151\156\153\145\144\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\146\157" + "\156\164\142\165\164\164\157\156\072\144\151\162\050\154\164\162" + "\051\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\054\040\056\154" + "\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151" + "\143\141\154\051\040\076\040\146\157\156\164\142\165\164\164\157" + "\156\072\144\151\162\050\162\164\154\051\072\156\157\164\050\072" + "\154\141\163\164\055\143\150\151\154\144\051\040\076\040\142\165" + "\164\164\157\156\040\173\040\142\157\162\144\145\162\055\164\157" + "\160\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060" + "\073\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\155\141\162\147\151\156\055\154\145\146\164\072\040\055\061\160" + "\170\073\040\175\012\012\056\154\151\156\153\145\144\072\156\157" + "\164\050\056\166\145\162\164\151\143\141\154\051\040\076\040\146" + "\157\156\164\142\165\164\164\157\156\072\144\151\162\050\154\164" + "\162\051\072\156\157\164\050\072\154\141\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\054\040\056\154" + "\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151" + "\143\141\154\051\040\076\040\146\157\156\164\142\165\164\164\157" + "\156\072\144\151\162\050\162\164\154\051\072\156\157\164\050\072" + "\146\151\162\163\164\055\143\150\151\154\144\051\040\076\040\142" + "\165\164\164\157\156\040\173\040\142\157\162\144\145\162\055\164" + "\157\160\055\162\151\147\150\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164\157" + "\155\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\175\012\012\056\154\151\156\153\145\144\056\166\145" + "\162\164\151\143\141\154\040\146\157\156\164\142\165\164\164\157" + "\156\072\156\157\164\050\072\146\151\162\163\164\055\143\150\151" + "\154\144\051\040\076\040\142\165\164\164\157\156\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162" + "\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\155\141\162\147\151\156\055\164\157\160" + "\072\040\055\061\160\170\073\040\175\012\012\056\154\151\156\153" + "\145\144\056\166\145\162\164\151\143\141\154\040\146\157\156\164" + "\142\165\164\164\157\156\072\156\157\164\050\072\154\141\163\164" + "\055\143\150\151\154\144\051\040\076\040\142\165\164\164\157\156" + "\040\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155" + "\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\162" + "\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\175\012\012\056\154\151\156\153\145\144\072\156\157\164\050\056" + "\166\145\162\164\151\143\141\154\051\040\076\040\164\141\142\142" + "\165\164\164\157\156\072\144\151\162\050\154\164\162\051\072\156" + "\157\164\050\072\146\151\162\163\164\055\143\150\151\154\144\051" + "\040\076\040\142\165\164\164\157\156\054\040\056\154\151\156\153" + "\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154" + "\051\040\076\040\164\141\142\142\165\164\164\157\156\072\144\151" + "\162\050\162\164\154\051\072\156\157\164\050\072\154\141\163\164" + "\055\143\150\151\154\144\051\040\076\040\142\165\164\164\157\156" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\060\073\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\060\073\040\155\141\162\147" + "\151\156\055\154\145\146\164\072\040\055\061\160\170\073\040\175" + "\012\012\056\154\151\156\153\145\144\072\156\157\164\050\056\166" + "\145\162\164\151\143\141\154\051\040\076\040\164\141\142\142\165" + "\164\164\157\156\072\144\151\162\050\154\164\162\051\072\156\157" + "\164\050\072\154\141\163\164\055\143\150\151\154\144\051\040\076" + "\040\142\165\164\164\157\156\054\040\056\154\151\156\153\145\144" + "\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040" + "\076\040\164\141\142\142\165\164\164\157\156\072\144\151\162\050" + "\162\164\154\051\072\156\157\164\050\072\146\151\162\163\164\055" + "\143\150\151\154\144\051\040\076\040\142\165\164\164\157\156\040" + "\173\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\060\073\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\162\151\147\150" + "\164\055\162\141\144\151\165\163\072\040\060\073\040\175\012\012" + "\056\154\151\156\153\145\144\056\166\145\162\164\151\143\141\154" + "\040\164\141\142\142\165\164\164\157\156\072\156\157\164\050\072" + "\146\151\162\163\164\055\143\150\151\154\144\051\040\076\040\142" + "\165\164\164\157\156\040\173\040\142\157\162\144\145\162\055\164" + "\157\160\055\154\145\146\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\142\157\162\144\145\162\055\164\157\160\055\162\151" + "\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\055\061\160\170\073" + "\040\175\012\012\056\154\151\156\153\145\144\056\166\145\162\164" + "\151\143\141\154\040\164\141\142\142\165\164\164\157\156\072\156" + "\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051\040" + "\076\040\142\165\164\164\157\156\040\173\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\175\012\012\056\154\151\156\153" + "\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154" + "\051\040\076\040\163\160\151\156\142\165\164\164\157\156\072\144" + "\151\162\050\154\164\162\051\072\156\157\164\050\072\146\151\162" + "\163\164\055\143\150\151\154\144\051\054\040\056\154\151\156\153" + "\145\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154" + "\051\040\076\040\163\160\151\156\142\165\164\164\157\156\072\144" + "\151\162\050\162\164\154\051\072\156\157\164\050\072\154\141\163" + "\164\055\143\150\151\154\144\051\040\173\040\142\157\162\144\145" + "\162\055\164\157\160\055\154\145\146\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164" + "\164\157\155\055\154\145\146\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\155\141\162\147\151\156\055\154\145\146\164\072" + "\040\055\061\160\170\073\040\175\012\012\056\154\151\156\153\145" + "\144\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051" + "\040\076\040\163\160\151\156\142\165\164\164\157\156\072\144\151" + "\162\050\154\164\162\051\072\156\157\164\050\072\154\141\163\164" + "\055\143\150\151\154\144\051\054\040\056\154\151\156\153\145\144" + "\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040" + "\076\040\163\160\151\156\142\165\164\164\157\156\072\144\151\162" + "\050\162\164\154\051\072\156\157\164\050\072\146\151\162\163\164" + "\055\143\150\151\154\144\051\040\173\040\142\157\162\144\145\162" + "\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151\165" + "\163\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164" + "\164\157\155\055\162\151\147\150\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\175\012\012\056\154\151\156\153\145\144\056" + "\166\145\162\164\151\143\141\154\040\163\160\151\156\142\165\164" + "\164\157\156\072\156\157\164\050\072\146\151\162\163\164\055\143" + "\150\151\154\144\051\040\173\040\142\157\162\144\145\162\055\164" + "\157\160\055\154\145\146\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\142\157\162\144\145\162\055\164\157\160\055\162\151" + "\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\055\061\160\170\073" + "\040\175\012\012\056\154\151\156\153\145\144\056\166\145\162\164" + "\151\143\141\154\040\163\160\151\156\142\165\164\164\157\156\072" + "\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051" + "\040\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155" + "\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\162" + "\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\175\012\012\056\154\151\156\153\145\144\072\156\157\164\050\056" + "\166\145\162\164\151\143\141\154\051\040\076\040\145\156\164\162" + "\171\072\144\151\162\050\154\164\162\051\072\156\157\164\050\072" + "\146\151\162\163\164\055\143\150\151\154\144\051\054\040\056\154" + "\151\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151" + "\143\141\154\051\040\076\040\145\156\164\162\171\072\144\151\162" + "\050\162\164\154\051\072\156\157\164\050\072\154\141\163\164\055" + "\143\150\151\154\144\051\040\173\040\142\157\162\144\145\162\055" + "\164\157\160\055\154\145\146\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164\157" + "\155\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060" + "\073\040\155\141\162\147\151\156\055\154\145\146\164\072\040\055" + "\061\160\170\073\040\175\012\012\056\154\151\156\153\145\144\072" + "\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076" + "\040\145\156\164\162\171\072\144\151\162\050\154\164\162\051\072" + "\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051" + "\054\040\056\154\151\156\153\145\144\072\156\157\164\050\056\166" + "\145\162\164\151\143\141\154\051\040\076\040\145\156\164\162\171" + "\072\144\151\162\050\162\164\154\051\072\156\157\164\050\072\146" + "\151\162\163\164\055\143\150\151\154\144\051\040\173\040\142\157" + "\162\144\145\162\055\164\157\160\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151\156" + "\153\145\144\056\166\145\162\164\151\143\141\154\040\145\156\164" + "\162\171\072\156\157\164\050\072\146\151\162\163\164\055\143\150" + "\151\154\144\051\040\173\040\142\157\162\144\145\162\055\164\157" + "\160\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060" + "\073\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\060\073\040\155\141" + "\162\147\151\156\055\164\157\160\072\040\055\061\160\170\073\040" + "\175\012\012\056\154\151\156\153\145\144\056\166\145\162\164\151" + "\143\141\154\040\145\156\164\162\171\072\156\157\164\050\072\154" + "\141\163\164\055\143\150\151\154\144\051\040\173\040\142\157\162" + "\144\145\162\055\142\157\164\164\157\155\055\154\145\146\164\055" + "\162\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151" + "\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143" + "\141\154\051\040\076\040\143\157\155\142\157\142\157\170\072\144" + "\151\162\050\154\164\162\051\072\156\157\164\050\072\146\151\162" + "\163\164\055\143\150\151\154\144\051\040\076\040\142\157\170\040" + "\076\040\142\165\164\164\157\156\056\143\157\155\142\157\054\040" + "\056\154\151\156\153\145\144\072\156\157\164\050\056\166\145\162" + "\164\151\143\141\154\051\040\076\040\143\157\155\142\157\142\157" + "\170\072\144\151\162\050\162\164\154\051\072\156\157\164\050\072" + "\154\141\163\164\055\143\150\151\154\144\051\040\076\040\142\157" + "\170\040\076\040\142\165\164\164\157\156\056\143\157\155\142\157" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\060\073\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\060\073\040\155\141\162\147" + "\151\156\055\154\145\146\164\072\040\055\061\160\170\073\040\175" + "\012\012\056\154\151\156\153\145\144\072\156\157\164\050\056\166" + "\145\162\164\151\143\141\154\051\040\076\040\143\157\155\142\157" + "\142\157\170\072\144\151\162\050\154\164\162\051\072\156\157\164" + "\050\072\154\141\163\164\055\143\150\151\154\144\051\040\076\040" + "\142\157\170\040\076\040\142\165\164\164\157\156\056\143\157\155" + "\142\157\054\040\056\154\151\156\153\145\144\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\076\040\143\157\155" + "\142\157\142\157\170\072\144\151\162\050\162\164\154\051\072\156" + "\157\164\050\072\146\151\162\163\164\055\143\150\151\154\144\051" + "\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156\056" + "\143\157\155\142\157\040\173\040\142\157\162\144\145\162\055\164" + "\157\160\055\162\151\147\150\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164\157" + "\155\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040" + "\060\073\040\175\012\012\056\154\151\156\153\145\144\056\166\145" + "\162\164\151\143\141\154\040\143\157\155\142\157\142\157\170\072" + "\156\157\164\050\072\146\151\162\163\164\055\143\150\151\154\144" + "\051\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156" + "\056\143\157\155\142\157\040\173\040\142\157\162\144\145\162\055" + "\164\157\160\055\154\145\146\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\142\157\162\144\145\162\055\164\157\160\055\162" + "\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\155\141\162\147\151\156\055\164\157\160\072\040\055\061\160\170" + "\073\040\175\012\012\056\154\151\156\153\145\144\056\166\145\162" + "\164\151\143\141\154\040\143\157\155\142\157\142\157\170\072\156" + "\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051\040" + "\076\040\142\157\170\040\076\040\142\165\164\164\157\156\056\143" + "\157\155\142\157\040\173\040\142\157\162\144\145\162\055\142\157" + "\164\164\157\155\055\154\145\146\164\055\162\141\144\151\165\163" + "\072\040\060\073\040\142\157\162\144\145\162\055\142\157\164\164" + "\157\155\055\162\151\147\150\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\175\012\012\056\154\151\156\153\145\144\072\156" + "\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076\040" + "\141\160\160\143\150\157\157\163\145\162\142\165\164\164\157\156" + "\072\144\151\162\050\154\164\162\051\072\156\157\164\050\072\146" + "\151\162\163\164\055\143\150\151\154\144\051\040\076\040\143\157" + "\155\142\157\142\157\170\040\076\040\142\157\170\040\076\040\142" + "\165\164\164\157\156\056\143\157\155\142\157\054\040\056\154\151" + "\156\153\145\144\072\156\157\164\050\056\166\145\162\164\151\143" + "\141\154\051\040\076\040\141\160\160\143\150\157\157\163\145\162" + "\142\165\164\164\157\156\072\144\151\162\050\162\164\154\051\072" + "\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051" + "\040\076\040\143\157\155\142\157\142\157\170\040\076\040\142\157" + "\170\040\076\040\142\165\164\164\157\156\056\143\157\155\142\157" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\060\073\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\154\145\146\164" + "\055\162\141\144\151\165\163\072\040\060\073\040\155\141\162\147" + "\151\156\055\154\145\146\164\072\040\055\061\160\170\073\040\175" + "\012\012\056\154\151\156\153\145\144\072\156\157\164\050\056\166" + "\145\162\164\151\143\141\154\051\040\076\040\141\160\160\143\150" + "\157\157\163\145\162\142\165\164\164\157\156\072\144\151\162\050" + "\154\164\162\051\072\156\157\164\050\072\154\141\163\164\055\143" + "\150\151\154\144\051\040\076\040\143\157\155\142\157\142\157\170" + "\040\076\040\142\157\170\040\076\040\142\165\164\164\157\156\056" + "\143\157\155\142\157\054\040\056\154\151\156\153\145\144\072\156" + "\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076\040" + "\141\160\160\143\150\157\157\163\145\162\142\165\164\164\157\156" + "\072\144\151\162\050\162\164\154\051\072\156\157\164\050\072\146" + "\151\162\163\164\055\143\150\151\154\144\051\040\076\040\143\157" + "\155\142\157\142\157\170\040\076\040\142\157\170\040\076\040\142" + "\165\164\164\157\156\056\143\157\155\142\157\040\173\040\142\157" + "\162\144\145\162\055\164\157\160\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\175\012\012\056\154\151\156" + "\153\145\144\056\166\145\162\164\151\143\141\154\040\141\160\160" + "\143\150\157\157\163\145\162\142\165\164\164\157\156\072\156\157" + "\164\050\072\146\151\162\163\164\055\143\150\151\154\144\051\040" + "\076\040\143\157\155\142\157\142\157\170\040\076\040\142\157\170" + "\040\076\040\142\165\164\164\157\156\056\143\157\155\142\157\040" + "\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145\146" + "\164\055\162\141\144\151\165\163\072\040\060\073\040\142\157\162" + "\144\145\162\055\164\157\160\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\060\073\040\155\141\162\147\151\156\055" + "\164\157\160\072\040\055\061\160\170\073\040\175\012\012\056\154" + "\151\156\153\145\144\056\166\145\162\164\151\143\141\154\040\141" + "\160\160\143\150\157\157\163\145\162\142\165\164\164\157\156\072" + "\156\157\164\050\072\154\141\163\164\055\143\150\151\154\144\051" + "\040\076\040\143\157\155\142\157\142\157\170\040\076\040\142\157" + "\170\040\076\040\142\165\164\164\157\156\056\143\157\155\142\157" + "\040\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155" + "\055\154\145\146\164\055\162\141\144\151\165\163\072\040\060\073" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\162" + "\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\175\012\012\154\151\156\153\054\040\142\165\164\164\157\156\056" + "\154\151\156\153\040\173\040\143\157\154\157\162\072\040\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\073\040\164\145\170" + "\164\055\144\145\143\157\162\141\164\151\157\156\072\040\165\156" + "\144\145\162\154\151\156\145\073\040\146\157\156\164\055\167\145" + "\151\147\150\164\072\040\151\156\150\145\162\151\164\073\040\175" + "\012\012\154\151\156\153\072\166\151\163\151\164\145\144\054\040" + "\142\165\164\164\157\156\056\154\151\156\153\072\166\151\163\151" + "\164\145\144\040\173\040\143\157\154\157\162\072\040\155\151\170" + "\050\100\141\143\143\145\156\164\137\143\157\154\157\162\054\100" + "\166\151\145\167\137\146\147\137\143\157\154\157\162\054\060\056" + "\062\051\073\040\175\012\012\154\151\156\153\072\150\157\166\145" + "\162\054\040\142\165\164\164\157\156\056\154\151\156\153\072\150" + "\157\166\145\162\040\173\040\143\157\154\157\162\072\040\163\150" + "\141\144\145\050\100\141\143\143\145\156\164\137\143\157\154\157" + "\162\054\061\056\061\051\073\040\175\012\012\154\151\156\153\072" + "\141\143\164\151\166\145\054\040\142\165\164\164\157\156\056\154" + "\151\156\153\072\141\143\164\151\166\145\040\173\040\143\157\154" + "\157\162\072\040\100\141\143\143\145\156\164\137\143\157\154\157" + "\162\073\040\175\012\012\154\151\156\153\072\144\151\163\141\142" + "\154\145\144\054\040\142\165\164\164\157\156\056\154\151\156\153" + "\072\144\151\163\141\142\154\145\144\040\173\040\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\065\051\073\040\175\012\012\056" + "\157\163\144\040\154\151\156\153\054\040\056\157\163\144\040\142" + "\165\164\164\157\156\056\154\151\156\153\040\173\040\143\157\154" + "\157\162\072\040\155\151\170\050\100\141\143\143\145\156\164\137" + "\142\147\137\143\157\154\157\162\054\167\150\151\164\145\054\060" + "\056\065\051\073\040\175\012\012\056\157\163\144\040\154\151\156" + "\153\072\166\151\163\151\164\145\144\054\040\056\157\163\144\040" + "\142\165\164\164\157\156\056\154\151\156\153\072\166\151\163\151" + "\164\145\144\040\173\040\143\157\154\157\162\072\040\155\151\170" + "\050\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\054\167\150\151\164\145\054\060\056\062\065\051\073\040\175" + "\012\012\056\157\163\144\040\154\151\156\153\072\141\143\164\151" + "\166\145\054\040\056\157\163\144\040\142\165\164\164\157\156\056" + "\154\151\156\153\072\141\143\164\151\166\145\040\173\040\143\157" + "\154\157\162\072\040\155\151\170\050\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\054\167\150\151\164\145\054" + "\060\056\065\051\073\040\175\012\012\154\151\156\153\040\173\040" + "\157\165\164\154\151\156\145\072\040\060\040\163\157\154\151\144" + "\040\164\162\141\156\163\160\141\162\145\156\164\073\040\157\165" + "\164\154\151\156\145\055\157\146\146\163\145\164\072\040\064\160" + "\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040\157" + "\165\164\154\151\156\145\055\143\157\154\157\162\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175\012" + "\012\154\151\156\153\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\040\173\040\157\165\164\154" + "\151\156\145\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\100\141\143\143\145\156\164\137\143\157\154\157\162\054\060" + "\056\065\051\073\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\072\040\062\160\170\073\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\072\040\055\062\160\170\073\040\175" + "\012\012\056\157\163\144\040\154\151\156\153\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\040" + "\173\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072" + "\040\162\147\142\141\050\062\065\065\054\040\062\065\065\054\040" + "\062\065\065\054\040\060\056\065\051\073\040\175\012\012\142\165" + "\164\164\157\156\056\154\151\156\153\040\076\040\154\141\142\145" + "\154\040\173\040\164\145\170\164\055\144\145\143\157\162\141\164" + "\151\157\156\072\040\165\156\144\145\162\154\151\156\145\073\040" + "\175\012\012\154\151\163\164\166\151\145\167\054\040\154\151\163" + "\164\040\173\040\143\157\154\157\162\072\040\100\166\151\145\167" + "\137\146\147\137\143\157\154\157\162\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\100\166\151" + "\145\167\137\142\147\137\143\157\154\157\162\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\154\151\160\072\040\160\141" + "\144\144\151\156\147\055\142\157\170\073\040\142\157\162\144\145" + "\162\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061\065" + "\051\073\040\175\012\012\154\151\163\164\166\151\145\167\040\076" + "\040\162\157\167\054\040\154\151\163\164\040\076\040\162\157\167" + "\040\173\040\160\141\144\144\151\156\147\072\040\062\160\170\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\154\151\160" + "\072\040\160\141\144\144\151\156\147\055\142\157\170\073\040\175" + "\012\012\154\151\163\164\166\151\145\167\040\076\040\162\157\167" + "\056\145\170\160\141\156\144\145\162\054\040\154\151\163\164\040" + "\076\040\162\157\167\056\145\170\160\141\156\144\145\162\040\173" + "\040\160\141\144\144\151\156\147\072\040\060\160\170\073\040\175" + "\012\012\154\151\163\164\166\151\145\167\040\076\040\162\157\167" + "\056\145\170\160\141\156\144\145\162\040\056\162\157\167\055\150" + "\145\141\144\145\162\054\040\154\151\163\164\040\076\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\040\056\162\157\167\055" + "\150\145\141\144\145\162\040\173\040\160\141\144\144\151\156\147" + "\072\040\062\160\170\073\040\175\012\012\154\151\163\164\166\151" + "\145\167\056\150\157\162\151\172\157\156\164\141\154\040\162\157" + "\167\056\163\145\160\141\162\141\164\157\162\054\040\154\151\163" + "\164\166\151\145\167\056\163\145\160\141\162\141\164\157\162\163" + "\056\150\157\162\151\172\157\156\164\141\154\040\076\040\162\157" + "\167\072\156\157\164\050\056\163\145\160\141\162\141\164\157\162" + "\051\054\040\154\151\163\164\056\150\157\162\151\172\157\156\164" + "\141\154\040\162\157\167\056\163\145\160\141\162\141\164\157\162" + "\054\040\154\151\163\164\056\163\145\160\141\162\141\164\157\162" + "\163\056\150\157\162\151\172\157\156\164\141\154\040\076\040\162" + "\157\167\072\156\157\164\050\056\163\145\160\141\162\141\164\157" + "\162\051\040\173\040\142\157\162\144\145\162\055\154\145\146\164" + "\072\040\061\160\170\040\163\157\154\151\144\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\065\051\073\040\175\012\012\154\151\163\164\166\151\145" + "\167\072\156\157\164\050\056\150\157\162\151\172\157\156\164\141" + "\154\051\040\162\157\167\056\163\145\160\141\162\141\164\157\162" + "\054\040\154\151\163\164\166\151\145\167\056\163\145\160\141\162" + "\141\164\157\162\163\072\156\157\164\050\056\150\157\162\151\172" + "\157\156\164\141\154\051\040\076\040\162\157\167\072\156\157\164" + "\050\056\163\145\160\141\162\141\164\157\162\051\054\040\154\151" + "\163\164\072\156\157\164\050\056\150\157\162\151\172\157\156\164" + "\141\154\051\040\162\157\167\056\163\145\160\141\162\141\164\157" + "\162\054\040\154\151\163\164\056\163\145\160\141\162\141\164\157" + "\162\163\072\156\157\164\050\056\150\157\162\151\172\157\156\164" + "\141\154\051\040\076\040\162\157\167\072\156\157\164\050\056\163" + "\145\160\141\162\141\164\157\162\051\040\173\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\072\040\061\160\170\040\163" + "\157\154\151\144\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\065\051\073\040\175" + "\012\012\154\151\163\164\166\151\145\167\040\076\040\150\145\141" + "\144\145\162\040\173\040\160\141\144\144\151\156\147\072\040\062" + "\160\170\073\040\160\141\144\144\151\156\147\055\164\157\160\072" + "\040\061\070\160\170\073\040\160\141\144\144\151\156\147\055\142" + "\157\164\164\157\155\072\040\066\160\170\073\040\175\012\012\162" + "\157\167\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\154\151\160\072\040\160\141\144\144\151\156\147\055\142\157" + "\170\073\040\175\012\012\162\157\167\040\173\040\157\165\164\154" + "\151\156\145\072\040\060\040\163\157\154\151\144\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\072\040\064\160\170\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\162\157\167" + "\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163" + "\151\142\154\145\040\173\040\157\165\164\154\151\156\145\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143" + "\145\156\164\137\143\157\154\157\162\054\060\056\065\051\073\040" + "\157\165\164\154\151\156\145\055\167\151\144\164\150\072\040\062" + "\160\170\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\055\062\160\170\073\040\175\012\012\056\157\163" + "\144\040\162\157\167\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\040\173\040\157\165\164\154" + "\151\156\145\055\143\157\154\157\162\072\040\162\147\142\141\050" + "\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040\060" + "\056\065\051\073\040\175\012\012\056\157\163\144\040\162\157\167" + "\056\141\143\164\151\166\141\164\141\142\154\145\072\150\157\166" + "\145\162\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\060\067\051\073" + "\040\175\012\012\056\157\163\144\040\162\157\167\056\141\143\164" + "\151\166\141\164\141\142\154\145\072\141\143\164\151\166\145\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\066\051\073\040\175\012" + "\012\056\157\163\144\040\162\157\167\056\141\143\164\151\166\141" + "\164\141\142\154\145\056\150\141\163\055\157\160\145\156\055\160" + "\157\160\165\160\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\060\067" + "\051\073\040\175\012\012\056\157\163\144\040\162\157\167\056\141" + "\143\164\151\166\141\164\141\142\154\145\072\163\145\154\145\143" + "\164\145\144\072\150\157\166\145\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\063\051\073\040\175\012\012\056\157\163\144\040" + "\162\157\167\056\141\143\164\151\166\141\164\141\142\154\145\072" + "\163\145\154\145\143\164\145\144\072\141\143\164\151\166\145\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\071\051\073\040\175\012" + "\012\056\157\163\144\040\162\157\167\056\141\143\164\151\166\141" + "\164\141\142\154\145\056\150\141\163\055\157\160\145\156\055\160" + "\157\160\165\160\072\163\145\154\145\143\164\145\144\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\061\063\051\073\040\175\012\012\056" + "\157\163\144\040\162\157\167\072\163\145\154\145\143\164\145\144" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\051\073\040\175\012" + "\012\162\157\167\056\141\143\164\151\166\141\164\141\142\154\145" + "\072\150\157\166\145\162\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\060\064\051\073\040\175\012\012\162\157\167\056\141\143\164\151" + "\166\141\164\141\142\154\145\072\141\143\164\151\166\145\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\060\070\051\073\040\175\012\012" + "\162\157\167\056\141\143\164\151\166\141\164\141\142\154\145\056" + "\150\141\163\055\157\160\145\156\055\160\157\160\165\160\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\060\064\051\073\040\175\012\012" + "\162\157\167\056\141\143\164\151\166\141\164\141\142\154\145\072" + "\163\145\154\145\143\164\145\144\072\150\157\166\145\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\054\060\056\063\062\051\073" + "\040\175\012\012\162\157\167\056\141\143\164\151\166\141\164\141" + "\142\154\145\072\163\145\154\145\143\164\145\144\072\141\143\164" + "\151\166\145\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\054\060" + "\056\063\071\051\073\040\175\012\012\162\157\167\056\141\143\164" + "\151\166\141\164\141\142\154\145\056\150\141\163\055\157\160\145" + "\156\055\160\157\160\165\160\072\163\145\154\145\143\164\145\144" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145" + "\156\164\137\142\147\137\143\157\154\157\162\054\060\056\063\062" + "\051\073\040\175\012\012\162\157\167\072\163\145\154\145\143\164" + "\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143" + "\143\145\156\164\137\142\147\137\143\157\154\157\162\054\060\056" + "\062\065\051\073\040\175\012\012\057\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\040\122\151\143\150\040\114\151\163\164\163\040\040\040\040\040" + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040" + "\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040\040" + "\040\040\040\040\040\052\040\114\141\162\147\145\040\154\151\163" + "\164\040\165\163\165\141\154\154\171\040\143\157\156\164\141\151" + "\156\151\156\147\040\154\157\164\163\040\157\146\040\167\151\144" + "\147\145\164\163\040\040\040\040\040\040\040\052\040\150\164\164" + "\160\163\072\057\057\147\151\164\154\141\142\056\147\156\157\155" + "\145\056\157\162\147\057\107\116\117\115\105\057\147\164\153\057" + "\055\057\151\163\163\165\145\163\057\063\060\067\063\040\040\040" + "\040\052\040\052\057\012\056\162\151\143\150\055\154\151\163\164" + "\040\173\040\057\052\040\162\151\143\150\040\154\151\163\164\163" + "\040\165\163\165\141\154\154\171\040\143\157\156\164\141\151\156" + "\151\156\147\040\157\164\150\145\162\040\167\151\144\147\145\164" + "\163\040\164\150\141\156\040\152\165\163\164\040\154\141\142\145" + "\154\163\057\164\145\170\164\040\052\057\040\175\012\012\056\162" + "\151\143\150\055\154\151\163\164\040\076\040\162\157\167\040\173" + "\040\160\141\144\144\151\156\147\072\040\070\160\170\040\061\062" + "\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\063\062\160\170\073\040\057\052\040\163\150\157\165\154\144\040" + "\142\145\040\164\141\154\154\040\145\166\145\156\040\167\150\145" + "\156\040\157\156\154\171\040\143\157\156\164\141\151\156\151\156" + "\147\040\141\040\154\141\142\145\154\040\052\057\040\175\012\012" + "\056\162\151\143\150\055\154\151\163\164\040\076\040\162\157\167" + "\040\076\040\142\157\170\040\173\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\061\062\160\170\073\040\175" + "\012\012\056\162\151\143\150\055\154\151\163\164\040\076\040\150" + "\145\141\144\145\162\040\173\040\160\141\144\144\151\156\147\055" + "\154\145\146\164\072\040\061\062\160\170\073\040\160\141\144\144" + "\151\156\147\055\162\151\147\150\164\072\040\061\062\160\170\073" + "\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\040\101\144\167\101\143\164\151\157\156\122" + "\157\167\040\052\040\052\057\012\162\157\167\040\154\141\142\145" + "\154\056\163\165\142\164\151\164\154\145\040\173\040\146\157\156" + "\164\055\163\151\172\145\072\040\163\155\141\154\154\145\162\073" + "\040\175\012\012\162\157\167\040\076\040\142\157\170\056\150\145" + "\141\144\145\162\040\173\040\155\141\162\147\151\156\055\154\145" + "\146\164\072\040\061\062\160\170\073\040\155\141\162\147\151\156" + "\055\162\151\147\150\164\072\040\061\062\160\170\073\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160" + "\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040\065" + "\060\160\170\073\040\175\012\012\162\157\167\040\076\040\142\157" + "\170\056\150\145\141\144\145\162\040\076\040\056\151\143\157\156" + "\072\144\151\163\141\142\154\145\144\040\173\040\146\151\154\164" + "\145\162\072\040\157\160\141\143\151\164\171\050\060\056\065\051" + "\073\040\175\012\012\162\157\167\040\076\040\142\157\170\056\150" + "\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154" + "\145\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\066\160\170\073\040\155\141\162\147\151\156\055\142\157\164\164" + "\157\155\072\040\066\160\170\073\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\063\160\170\073\040\160\141" + "\144\144\151\156\147\072\040\060\073\040\175\012\012\162\157\167" + "\040\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040" + "\142\157\170\056\164\151\164\154\145\054\040\162\157\167\040\076" + "\040\142\157\170\056\150\145\141\144\145\162\040\076\040\142\157" + "\170\056\164\151\164\154\145\040\076\040\056\164\151\164\154\145" + "\054\040\162\157\167\040\076\040\142\157\170\056\150\145\141\144" + "\145\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076" + "\040\056\163\165\142\164\151\164\154\145\040\173\040\160\141\144" + "\144\151\156\147\072\040\060\073\040\146\157\156\164\055\167\145" + "\151\147\150\164\072\040\151\156\150\145\162\151\164\073\040\175" + "\012\012\162\157\167\040\076\040\142\157\170\056\150\145\141\144" + "\145\162\040\076\040\056\160\162\145\146\151\170\145\163\054\040" + "\162\157\167\040\076\040\142\157\170\056\150\145\141\144\145\162" + "\040\076\040\056\163\165\146\146\151\170\145\163\040\173\040\142" + "\157\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066" + "\160\170\073\040\175\012\012\162\157\167\040\076\040\142\157\170" + "\056\150\145\141\144\145\162\040\076\040\056\151\143\157\156\072" + "\144\151\162\050\154\164\162\051\054\040\162\157\167\040\076\040" + "\142\157\170\056\150\145\141\144\145\162\040\076\040\056\160\162" + "\145\146\151\170\145\163\072\144\151\162\050\154\164\162\051\040" + "\173\040\155\141\162\147\151\156\055\162\151\147\150\164\072\040" + "\066\160\170\073\040\175\012\012\162\157\167\040\076\040\142\157" + "\170\056\150\145\141\144\145\162\040\076\040\056\151\143\157\156" + "\072\144\151\162\050\162\164\154\051\054\040\162\157\167\040\076" + "\040\142\157\170\056\150\145\141\144\145\162\040\076\040\056\160" + "\162\145\146\151\170\145\163\072\144\151\162\050\162\164\154\051" + "\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072\040" + "\066\160\170\073\040\175\012\012\162\157\167\056\160\162\157\160" + "\145\162\164\171\040\076\040\142\157\170\056\150\145\141\144\145" + "\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040" + "\056\164\151\164\154\145\054\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\056\160\162\157\160\145\162\164\171\040\142\157" + "\170\040\076\040\154\151\163\164\040\076\040\162\157\167\040\076" + "\040\142\157\170\056\150\145\141\144\145\162\040\076\040\142\157" + "\170\056\164\151\164\154\145\040\076\040\056\164\151\164\154\145" + "\040\173\040\146\157\156\164\055\163\151\172\145\072\040\163\155" + "\141\154\154\145\162\073\040\175\012\012\162\157\167\056\160\162" + "\157\160\145\162\164\171\040\076\040\142\157\170\056\150\145\141" + "\144\145\162\040\076\040\142\157\170\056\164\151\164\154\145\040" + "\076\040\056\163\165\142\164\151\164\154\145\054\040\162\157\167" + "\056\145\170\160\141\156\144\145\162\056\160\162\157\160\145\162" + "\164\171\040\142\157\170\040\076\040\154\151\163\164\040\076\040" + "\162\157\167\040\076\040\142\157\170\056\150\145\141\144\145\162" + "\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040\056" + "\163\165\142\164\151\164\154\145\040\173\040\146\157\156\164\055" + "\163\151\172\145\072\040\151\156\150\145\162\151\164\073\040\157" + "\160\141\143\151\164\171\072\040\061\073\040\175\012\012\162\157" + "\167\056\160\162\157\160\145\162\164\171\056\155\157\156\157\163" + "\160\141\143\145\054\040\162\157\167\056\145\170\160\141\156\144" + "\145\162\056\160\162\157\160\145\162\164\171\040\142\157\170\040" + "\076\040\154\151\163\164\040\076\040\162\157\167\056\155\157\156" + "\157\163\160\141\143\145\040\173\040\146\157\156\164\055\146\141" + "\155\151\154\171\072\040\151\156\150\145\162\151\164\073\040\175" + "\012\012\162\157\167\056\160\162\157\160\145\162\164\171\056\155" + "\157\156\157\163\160\141\143\145\040\076\040\142\157\170\056\150" + "\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154" + "\145\040\076\040\056\163\165\142\164\151\164\154\145\054\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\056\160\162\157\160" + "\145\162\164\171\040\142\157\170\040\076\040\154\151\163\164\040" + "\076\040\162\157\167\056\155\157\156\157\163\160\141\143\145\040" + "\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040\142" + "\157\170\056\164\151\164\154\145\040\076\040\056\163\165\142\164" + "\151\164\154\145\040\173\040\146\157\156\164\055\146\141\155\151" + "\154\171\072\040\155\157\156\157\163\160\141\143\145\073\040\175" + "\012\012\057\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\040\101\144\167\105\156\164\162\171\122\157\167\040\141\156" + "\144\040\101\144\167\123\160\151\156\122\157\167\040\052\040\052" + "\057\012\162\157\167\056\145\156\164\162\171\056\141\143\164\151" + "\166\141\164\141\142\154\145\056\146\157\143\165\163\145\144\072" + "\156\157\164\050\072\163\145\154\145\143\164\145\144\051\072\150" + "\157\166\145\162\054\040\162\157\167\056\145\156\164\162\171\056" + "\141\143\164\151\166\141\164\141\142\154\145\056\146\157\143\165" + "\163\145\144\072\156\157\164\050\072\163\145\154\145\143\164\145" + "\144\051\072\141\143\164\151\166\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\164\162" + "\141\156\163\160\141\162\145\156\164\073\040\175\012\012\162\157" + "\167\056\145\156\164\162\171\072\144\151\163\141\142\154\145\144" + "\040\164\145\170\164\040\173\040\157\160\141\143\151\164\171\072" + "\040\060\056\065\073\040\175\012\012\162\157\167\056\145\156\164" + "\162\171\072\144\151\163\141\142\154\145\144\040\056\144\151\155" + "\055\154\141\142\145\154\054\040\162\157\167\056\145\156\164\162" + "\171\072\144\151\163\141\142\154\145\144\040\163\143\141\154\145" + "\040\076\040\166\141\154\165\145\054\040\162\157\167\056\145\156" + "\164\162\171\072\144\151\163\141\142\154\145\144\040\160\162\157" + "\147\162\145\163\163\142\141\162\040\076\040\164\145\170\164\054" + "\040\162\157\167\056\145\156\164\162\171\072\144\151\163\141\142" + "\154\145\144\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\040\151\155\141\147\145\056\145\170\160\141\156\144\145\162\055" + "\162\157\167\055\141\162\162\157\167\054\040\162\157\167\056\145" + "\170\160\141\156\144\145\162\040\162\157\167\056\145\156\164\162" + "\171\072\144\151\163\141\142\154\145\144\040\151\155\141\147\145" + "\056\145\170\160\141\156\144\145\162\055\162\157\167\055\141\162" + "\162\157\167\054\040\162\157\167\056\145\156\164\162\171\072\144" + "\151\163\141\142\154\145\144\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\164\145\170\164\040\076\040\160\154\141\143" + "\145\150\157\154\144\145\162\054\040\162\157\167\056\145\156\164" + "\162\171\072\144\151\163\141\142\154\145\144\040\145\156\164\162" + "\171\040\076\040\164\145\170\164\040\076\040\160\154\141\143\145" + "\150\157\154\144\145\162\054\040\162\157\167\056\145\156\164\162" + "\171\072\144\151\163\141\142\154\145\144\040\154\141\142\145\154" + "\056\163\145\160\141\162\141\164\157\162\054\040\162\157\167\056" + "\145\156\164\162\171\072\144\151\163\141\142\154\145\144\040\162" + "\157\167\056\160\162\157\160\145\162\164\171\040\076\040\142\157" + "\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056\164" + "\151\164\154\145\040\076\040\056\164\151\164\154\145\054\040\162" + "\157\167\056\145\156\164\162\171\072\144\151\163\141\142\154\145" + "\144\040\162\157\167\056\145\170\160\141\156\144\145\162\056\160" + "\162\157\160\145\162\164\171\040\142\157\170\040\076\040\154\151" + "\163\164\040\076\040\162\157\167\040\076\040\142\157\170\056\150" + "\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154" + "\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167\056" + "\145\170\160\141\156\144\145\162\056\160\162\157\160\145\162\164" + "\171\040\162\157\167\056\145\156\164\162\171\072\144\151\163\141" + "\142\154\145\144\040\142\157\170\040\076\040\154\151\163\164\040" + "\076\040\162\157\167\040\076\040\142\157\170\056\150\145\141\144" + "\145\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076" + "\040\056\164\151\164\154\145\054\040\162\157\167\056\145\156\164" + "\162\171\072\144\151\163\141\142\154\145\144\040\056\163\165\142" + "\164\151\164\154\145\040\173\040\157\160\141\143\151\164\171\072" + "\040\061\073\040\175\012\012\162\157\167\056\145\156\164\162\171" + "\040\056\145\144\151\164\055\151\143\157\156\054\040\162\157\167" + "\056\145\156\164\162\171\040\056\151\156\144\151\143\141\164\157" + "\162\040\173\040\155\151\156\055\167\151\144\164\150\072\040\062" + "\064\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\062\064\160\170\073\040\160\141\144\144\151\156\147\072\040" + "\065\160\170\073\040\175\012\012\162\157\167\056\145\156\164\162" + "\171\040\056\145\144\151\164\055\151\143\157\156\072\144\151\163" + "\141\142\154\145\144\040\173\040\157\160\141\143\151\164\171\072" + "\040\060\056\063\073\040\175\012\012\162\157\167\056\145\156\164" + "\162\171\040\056\151\156\144\151\143\141\164\157\162\040\173\040" + "\157\160\141\143\151\164\171\072\040\060\056\063\073\040\175\012" + "\012\162\157\167\056\145\156\164\162\171\056\155\157\156\157\163" + "\160\141\143\145\040\173\040\146\157\156\164\055\146\141\155\151" + "\154\171\072\040\151\156\150\145\162\151\164\073\040\175\012\012" + "\162\157\167\056\145\156\164\162\171\056\155\157\156\157\163\160" + "\141\143\145\040\164\145\170\164\040\173\040\146\157\156\164\055" + "\146\141\155\151\154\171\072\040\155\157\156\157\163\160\141\143" + "\145\073\040\175\012\012\162\157\167\056\163\160\151\156\056\141" + "\143\164\151\166\141\164\141\142\154\145\056\146\157\143\165\163" + "\145\144\072\156\157\164\050\072\163\145\154\145\143\164\145\144" + "\051\072\150\157\166\145\162\054\040\162\157\167\056\163\160\151" + "\156\056\141\143\164\151\166\141\164\141\142\154\145\056\146\157" + "\143\165\163\145\144\072\156\157\164\050\072\163\145\154\145\143" + "\164\145\144\051\072\141\143\164\151\166\145\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\175\012\012" + "\162\157\167\056\163\160\151\156\040\163\160\151\156\142\165\164" + "\164\157\156\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\156\157\156\145\073\040\142\157\162\144\145\162\055\163" + "\160\141\143\151\156\147\072\040\066\160\170\073\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\156\157\156\145\073\040\175" + "\012\012\162\157\167\056\163\160\151\156\040\163\160\151\156\142" + "\165\164\164\157\156\054\040\162\157\167\056\163\160\151\156\040" + "\163\160\151\156\142\165\164\164\157\156\072\146\157\143\165\163" + "\040\173\040\157\165\164\154\151\156\145\072\040\156\157\156\145" + "\073\040\175\012\012\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\054\040\162\157\167\056\163\160\151\156\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056" + "\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150" + "\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163\160" + "\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164" + "\055\143\150\151\154\144\054\040\162\157\167\056\163\160\151\156" + "\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\054\040\162\157\167" + "\056\163\160\151\156\040\163\160\151\156\142\165\164\164\157\156" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\144\157\167\156\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\072\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143" + "\150\151\154\144\054\040\162\157\167\056\163\160\151\156\040\163" + "\160\151\156\142\165\164\164\157\156\040\076\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162\164" + "\154\051\072\146\151\162\163\164\055\143\150\151\154\144\040\173" + "\040\155\151\156\055\167\151\144\164\150\072\040\063\060\160\170" + "\073\040\155\151\156\055\150\145\151\147\150\164\072\040\063\060" + "\160\170\073\040\155\141\162\147\151\156\072\040\061\060\160\170" + "\040\062\160\170\073\040\142\157\162\144\145\162\072\040\156\157" + "\156\145\073\040\175\012\012\162\157\167\056\163\160\151\156\072" + "\144\151\163\141\142\154\145\144\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\163" + "\141\142\154\145\144\054\040\162\157\167\056\163\160\151\156\072" + "\144\151\163\141\142\154\145\144\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164" + "\050\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162" + "\050\154\164\162\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\163\141\142\154\145\144\054\040\162\157\167\056\163" + "\160\151\156\072\144\151\163\141\142\154\145\144\040\163\160\151" + "\156\142\165\164\164\157\156\040\076\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165\160" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\162\164\154\051\072\146\151\162\163\164\055" + "\143\150\151\154\144\072\144\151\163\141\142\154\145\144\054\040" + "\162\157\167\056\163\160\151\156\072\144\151\163\141\142\154\145" + "\144\040\163\160\151\156\142\165\164\164\157\156\040\076\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141" + "\164\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\072\144\151\163" + "\141\142\154\145\144\054\040\162\157\167\056\163\160\151\156\072" + "\144\151\163\141\142\154\145\144\040\163\160\151\156\142\165\164" + "\164\157\156\040\076\040\142\165\164\164\157\156\056\151\155\141" + "\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\144\151\162\050\154\164\162\051\072\154\141\163" + "\164\055\143\150\151\154\144\072\144\151\163\141\142\154\145\144" + "\054\040\162\157\167\056\163\160\151\156\072\144\151\163\141\142" + "\154\145\144\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144" + "\151\162\050\162\164\154\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\072\144\151\163\141\142\154\145\144\040\173\040\146" + "\151\154\164\145\162\072\040\156\157\156\145\073\040\175\012\012" + "\162\157\167\056\145\156\164\162\171\054\040\162\157\167\056\163" + "\160\151\156\040\173\040\157\165\164\154\151\156\145\072\040\060" + "\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\065\160\170\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\040\062" + "\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145" + "\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056" + "\064\065\054\040\060\056\071\064\051\073\040\175\012\012\162\157" + "\167\056\145\156\164\162\171\056\146\157\143\165\163\145\144\054" + "\040\162\157\167\056\163\160\151\156\056\146\157\143\165\163\145" + "\144\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\143\157\154\157\162\054\060\056\065\051\073\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\072\040\062\160\170\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\055\061\160\170\073\040\175\012\012\162\157\167\056\145\156" + "\164\162\171\056\141\143\164\151\166\141\164\141\142\154\145\056" + "\146\157\143\165\163\145\144\072\156\157\164\050\072\163\145\154" + "\145\143\164\145\144\051\072\150\157\166\145\162\054\040\162\157" + "\167\056\145\156\164\162\171\056\141\143\164\151\166\141\164\141" + "\142\154\145\056\146\157\143\165\163\145\144\072\156\157\164\050" + "\072\163\145\154\145\143\164\145\144\051\072\141\143\164\151\166" + "\145\054\040\162\157\167\056\163\160\151\156\056\141\143\164\151" + "\166\141\164\141\142\154\145\056\146\157\143\165\163\145\144\072" + "\156\157\164\050\072\163\145\154\145\143\164\145\144\051\072\150" + "\157\166\145\162\054\040\162\157\167\056\163\160\151\156\056\141" + "\143\164\151\166\141\164\141\142\154\145\056\146\157\143\165\163" + "\145\144\072\156\157\164\050\072\163\145\154\145\143\164\145\144" + "\051\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\175\012\012\162\157\167" + "\056\145\156\164\162\171\056\145\162\162\157\162\054\040\162\157" + "\167\056\163\160\151\156\056\145\162\162\157\162\040\173\040\157" + "\165\164\154\151\156\145\072\040\060\040\163\157\154\151\144\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\065\160\170" + "\073\040\164\162\141\156\163\151\164\151\157\156\072\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\167\151\144\164\150\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\073\040\175\012\012\162\157\167\056\145\156\164\162\171" + "\056\145\162\162\157\162\056\146\157\143\165\163\145\144\054\040" + "\162\157\167\056\163\160\151\156\056\145\162\162\157\162\056\146" + "\157\143\165\163\145\144\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\065\051\073" + "\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072\040" + "\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\072\040\055\061\160\170\073\040\175\012\012\162\157" + "\167\056\145\156\164\162\171\056\145\162\162\157\162\040\164\145" + "\170\164\040\076\040\163\145\154\145\143\164\151\157\156\072\146" + "\157\143\165\163\055\167\151\164\150\151\156\054\040\162\157\167" + "\056\163\160\151\156\056\145\162\162\157\162\040\164\145\170\164" + "\040\076\040\163\145\154\145\143\164\151\157\156\072\146\157\143" + "\165\163\055\167\151\164\150\151\156\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\100\145\162\162\157\162\137\143\157\154\157\162" + "\054\060\056\062\051\073\040\175\012\012\162\157\167\056\145\156" + "\164\162\171\056\145\162\162\157\162\040\164\145\170\164\040\076" + "\040\143\165\162\163\157\162\055\150\141\156\144\154\145\040\076" + "\040\143\157\156\164\145\156\164\163\054\040\162\157\167\056\163" + "\160\151\156\056\145\162\162\157\162\040\164\145\170\164\040\076" + "\040\143\165\162\163\157\162\055\150\141\156\144\154\145\040\076" + "\040\143\157\156\164\145\156\164\163\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\143\165" + "\162\162\145\156\164\103\157\154\157\162\073\040\175\012\012\162" + "\157\167\056\145\156\164\162\171\056\145\162\162\157\162\040\056" + "\144\151\155\055\154\141\142\145\154\054\040\162\157\167\056\145" + "\156\164\162\171\056\145\162\162\157\162\040\163\143\141\154\145" + "\040\076\040\166\141\154\165\145\054\040\162\157\167\056\145\156" + "\164\162\171\056\145\162\162\157\162\040\160\162\157\147\162\145" + "\163\163\142\141\162\040\076\040\164\145\170\164\054\040\162\157" + "\167\056\145\156\164\162\171\056\145\162\162\157\162\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\040\151\155\141\147\145" + "\056\145\170\160\141\156\144\145\162\055\162\157\167\055\141\162" + "\162\157\167\054\040\162\157\167\056\145\170\160\141\156\144\145" + "\162\040\162\157\167\056\145\156\164\162\171\056\145\162\162\157" + "\162\040\151\155\141\147\145\056\145\170\160\141\156\144\145\162" + "\055\162\157\167\055\141\162\162\157\167\054\040\162\157\167\056" + "\145\156\164\162\171\056\145\162\162\157\162\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\164\145\170\164\040\076\040" + "\160\154\141\143\145\150\157\154\144\145\162\054\040\162\157\167" + "\056\145\156\164\162\171\056\145\162\162\157\162\040\145\156\164" + "\162\171\040\076\040\164\145\170\164\040\076\040\160\154\141\143" + "\145\150\157\154\144\145\162\054\040\162\157\167\056\145\156\164" + "\162\171\056\145\162\162\157\162\040\154\141\142\145\154\056\163" + "\145\160\141\162\141\164\157\162\054\040\162\157\167\056\145\156" + "\164\162\171\056\145\162\162\157\162\040\162\157\167\056\160\162" + "\157\160\145\162\164\171\040\076\040\142\157\170\056\150\145\141" + "\144\145\162\040\076\040\142\157\170\056\164\151\164\154\145\040" + "\076\040\056\164\151\164\154\145\054\040\162\157\167\056\145\156" + "\164\162\171\056\145\162\162\157\162\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\056\160\162\157\160\145\162\164\171\040" + "\142\157\170\040\076\040\154\151\163\164\040\076\040\162\157\167" + "\040\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040" + "\142\157\170\056\164\151\164\154\145\040\076\040\056\164\151\164" + "\154\145\054\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\056\160\162\157\160\145\162\164\171\040\162\157\167\056\145\156" + "\164\162\171\056\145\162\162\157\162\040\142\157\170\040\076\040" + "\154\151\163\164\040\076\040\162\157\167\040\076\040\142\157\170" + "\056\150\145\141\144\145\162\040\076\040\142\157\170\056\164\151" + "\164\154\145\040\076\040\056\164\151\164\154\145\054\040\162\157" + "\167\056\145\156\164\162\171\056\145\162\162\157\162\040\056\163" + "\165\142\164\151\164\154\145\054\040\162\157\167\056\163\160\151" + "\156\056\145\162\162\157\162\040\056\144\151\155\055\154\141\142" + "\145\154\054\040\162\157\167\056\163\160\151\156\056\145\162\162" + "\157\162\040\163\143\141\154\145\040\076\040\166\141\154\165\145" + "\054\040\162\157\167\056\163\160\151\156\056\145\162\162\157\162" + "\040\160\162\157\147\162\145\163\163\142\141\162\040\076\040\164" + "\145\170\164\054\040\162\157\167\056\163\160\151\156\056\145\162" + "\162\157\162\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\040\151\155\141\147\145\056\145\170\160\141\156\144\145\162\055" + "\162\157\167\055\141\162\162\157\167\054\040\162\157\167\056\145" + "\170\160\141\156\144\145\162\040\162\157\167\056\163\160\151\156" + "\056\145\162\162\157\162\040\151\155\141\147\145\056\145\170\160" + "\141\156\144\145\162\055\162\157\167\055\141\162\162\157\167\054" + "\040\162\157\167\056\163\160\151\156\056\145\162\162\157\162\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\164\145\170" + "\164\040\076\040\160\154\141\143\145\150\157\154\144\145\162\054" + "\040\162\157\167\056\163\160\151\156\056\145\162\162\157\162\040" + "\145\156\164\162\171\040\076\040\164\145\170\164\040\076\040\160" + "\154\141\143\145\150\157\154\144\145\162\054\040\162\157\167\056" + "\163\160\151\156\056\145\162\162\157\162\040\154\141\142\145\154" + "\056\163\145\160\141\162\141\164\157\162\054\040\162\157\167\056" + "\163\160\151\156\056\145\162\162\157\162\040\162\157\167\056\160" + "\162\157\160\145\162\164\171\040\076\040\142\157\170\056\150\145" + "\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154\145" + "\040\076\040\056\164\151\164\154\145\054\040\162\157\167\056\163" + "\160\151\156\056\145\162\162\157\162\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\056\160\162\157\160\145\162\164\171\040" + "\142\157\170\040\076\040\154\151\163\164\040\076\040\162\157\167" + "\040\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040" + "\142\157\170\056\164\151\164\154\145\040\076\040\056\164\151\164" + "\154\145\054\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\056\160\162\157\160\145\162\164\171\040\162\157\167\056\163\160" + "\151\156\056\145\162\162\157\162\040\142\157\170\040\076\040\154" + "\151\163\164\040\076\040\162\157\167\040\076\040\142\157\170\056" + "\150\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164" + "\154\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167" + "\056\163\160\151\156\056\145\162\162\157\162\040\056\163\165\142" + "\164\151\164\154\145\040\173\040\157\160\141\143\151\164\171\072" + "\040\061\073\040\175\012\012\162\157\167\056\145\156\164\162\171" + "\056\145\162\162\157\162\040\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\054\040\162\157\167\056\163\160" + "\151\156\056\145\162\162\157\162\040\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\145\162\162\157\162\137\142\147\137\143\157\154\157\162\073\040" + "\143\157\154\157\162\072\040\100\145\162\162\157\162\137\146\147" + "\137\143\157\154\157\162\073\040\175\012\012\162\157\167\056\145" + "\156\164\162\171\056\167\141\162\156\151\156\147\054\040\162\157" + "\167\056\163\160\151\156\056\167\141\162\156\151\156\147\040\173" + "\040\157\165\164\154\151\156\145\072\040\060\040\163\157\154\151" + "\144\040\164\162\141\156\163\160\141\162\145\156\164\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\065" + "\160\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156" + "\145\055\167\151\144\164\150\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\142\157\162\144" + "\145\162\055\162\141\144\151\165\163\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\073\040\175\012\012\162\157\167\056\145\156\164" + "\162\171\056\167\141\162\156\151\156\147\056\146\157\143\165\163" + "\145\144\054\040\162\157\167\056\163\160\151\156\056\167\141\162" + "\156\151\156\147\056\146\157\143\165\163\145\144\040\173\040\157" + "\165\164\154\151\156\145\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\065\051\073\040\157\165\164\154\151\156\145\055\167" + "\151\144\164\150\072\040\062\160\170\073\040\157\165\164\154\151" + "\156\145\055\157\146\146\163\145\164\072\040\055\061\160\170\073" + "\040\175\012\012\162\157\167\056\145\156\164\162\171\056\167\141" + "\162\156\151\156\147\040\164\145\170\164\040\076\040\163\145\154" + "\145\143\164\151\157\156\072\146\157\143\165\163\055\167\151\164" + "\150\151\156\054\040\162\157\167\056\163\160\151\156\056\167\141" + "\162\156\151\156\147\040\164\145\170\164\040\076\040\163\145\154" + "\145\143\164\151\157\156\072\146\157\143\165\163\055\167\151\164" + "\150\151\156\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\167" + "\141\162\156\151\156\147\137\143\157\154\157\162\054\060\056\062" + "\051\073\040\175\012\012\162\157\167\056\145\156\164\162\171\056" + "\167\141\162\156\151\156\147\040\164\145\170\164\040\076\040\143" + "\165\162\163\157\162\055\150\141\156\144\154\145\040\076\040\143" + "\157\156\164\145\156\164\163\054\040\162\157\167\056\163\160\151" + "\156\056\167\141\162\156\151\156\147\040\164\145\170\164\040\076" + "\040\143\165\162\163\157\162\055\150\141\156\144\154\145\040\076" + "\040\143\157\156\164\145\156\164\163\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\143\165" + "\162\162\145\156\164\103\157\154\157\162\073\040\175\012\012\162" + "\157\167\056\145\156\164\162\171\056\167\141\162\156\151\156\147" + "\040\056\144\151\155\055\154\141\142\145\154\054\040\162\157\167" + "\056\145\156\164\162\171\056\167\141\162\156\151\156\147\040\163" + "\143\141\154\145\040\076\040\166\141\154\165\145\054\040\162\157" + "\167\056\145\156\164\162\171\056\167\141\162\156\151\156\147\040" + "\160\162\157\147\162\145\163\163\142\141\162\040\076\040\164\145" + "\170\164\054\040\162\157\167\056\145\156\164\162\171\056\167\141" + "\162\156\151\156\147\040\162\157\167\056\145\170\160\141\156\144" + "\145\162\040\151\155\141\147\145\056\145\170\160\141\156\144\145" + "\162\055\162\157\167\055\141\162\162\157\167\054\040\162\157\167" + "\056\145\170\160\141\156\144\145\162\040\162\157\167\056\145\156" + "\164\162\171\056\167\141\162\156\151\156\147\040\151\155\141\147" + "\145\056\145\170\160\141\156\144\145\162\055\162\157\167\055\141" + "\162\162\157\167\054\040\162\157\167\056\145\156\164\162\171\056" + "\167\141\162\156\151\156\147\040\163\160\151\156\142\165\164\164" + "\157\156\040\076\040\164\145\170\164\040\076\040\160\154\141\143" + "\145\150\157\154\144\145\162\054\040\162\157\167\056\145\156\164" + "\162\171\056\167\141\162\156\151\156\147\040\145\156\164\162\171" + "\040\076\040\164\145\170\164\040\076\040\160\154\141\143\145\150" + "\157\154\144\145\162\054\040\162\157\167\056\145\156\164\162\171" + "\056\167\141\162\156\151\156\147\040\154\141\142\145\154\056\163" + "\145\160\141\162\141\164\157\162\054\040\162\157\167\056\145\156" + "\164\162\171\056\167\141\162\156\151\156\147\040\162\157\167\056" + "\160\162\157\160\145\162\164\171\040\076\040\142\157\170\056\150" + "\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154" + "\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167\056" + "\145\156\164\162\171\056\167\141\162\156\151\156\147\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\056\160\162\157\160\145" + "\162\164\171\040\142\157\170\040\076\040\154\151\163\164\040\076" + "\040\162\157\167\040\076\040\142\157\170\056\150\145\141\144\145" + "\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040" + "\056\164\151\164\154\145\054\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\056\160\162\157\160\145\162\164\171\040\162\157" + "\167\056\145\156\164\162\171\056\167\141\162\156\151\156\147\040" + "\142\157\170\040\076\040\154\151\163\164\040\076\040\162\157\167" + "\040\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040" + "\142\157\170\056\164\151\164\154\145\040\076\040\056\164\151\164" + "\154\145\054\040\162\157\167\056\145\156\164\162\171\056\167\141" + "\162\156\151\156\147\040\056\163\165\142\164\151\164\154\145\054" + "\040\162\157\167\056\163\160\151\156\056\167\141\162\156\151\156" + "\147\040\056\144\151\155\055\154\141\142\145\154\054\040\162\157" + "\167\056\163\160\151\156\056\167\141\162\156\151\156\147\040\163" + "\143\141\154\145\040\076\040\166\141\154\165\145\054\040\162\157" + "\167\056\163\160\151\156\056\167\141\162\156\151\156\147\040\160" + "\162\157\147\162\145\163\163\142\141\162\040\076\040\164\145\170" + "\164\054\040\162\157\167\056\163\160\151\156\056\167\141\162\156" + "\151\156\147\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\040\151\155\141\147\145\056\145\170\160\141\156\144\145\162\055" + "\162\157\167\055\141\162\162\157\167\054\040\162\157\167\056\145" + "\170\160\141\156\144\145\162\040\162\157\167\056\163\160\151\156" + "\056\167\141\162\156\151\156\147\040\151\155\141\147\145\056\145" + "\170\160\141\156\144\145\162\055\162\157\167\055\141\162\162\157" + "\167\054\040\162\157\167\056\163\160\151\156\056\167\141\162\156" + "\151\156\147\040\163\160\151\156\142\165\164\164\157\156\040\076" + "\040\164\145\170\164\040\076\040\160\154\141\143\145\150\157\154" + "\144\145\162\054\040\162\157\167\056\163\160\151\156\056\167\141" + "\162\156\151\156\147\040\145\156\164\162\171\040\076\040\164\145" + "\170\164\040\076\040\160\154\141\143\145\150\157\154\144\145\162" + "\054\040\162\157\167\056\163\160\151\156\056\167\141\162\156\151" + "\156\147\040\154\141\142\145\154\056\163\145\160\141\162\141\164" + "\157\162\054\040\162\157\167\056\163\160\151\156\056\167\141\162" + "\156\151\156\147\040\162\157\167\056\160\162\157\160\145\162\164" + "\171\040\076\040\142\157\170\056\150\145\141\144\145\162\040\076" + "\040\142\157\170\056\164\151\164\154\145\040\076\040\056\164\151" + "\164\154\145\054\040\162\157\167\056\163\160\151\156\056\167\141" + "\162\156\151\156\147\040\162\157\167\056\145\170\160\141\156\144" + "\145\162\056\160\162\157\160\145\162\164\171\040\142\157\170\040" + "\076\040\154\151\163\164\040\076\040\162\157\167\040\076\040\142" + "\157\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056" + "\164\151\164\154\145\040\076\040\056\164\151\164\154\145\054\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\056\160\162\157" + "\160\145\162\164\171\040\162\157\167\056\163\160\151\156\056\167" + "\141\162\156\151\156\147\040\142\157\170\040\076\040\154\151\163" + "\164\040\076\040\162\157\167\040\076\040\142\157\170\056\150\145" + "\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154\145" + "\040\076\040\056\164\151\164\154\145\054\040\162\157\167\056\163" + "\160\151\156\056\167\141\162\156\151\156\147\040\056\163\165\142" + "\164\151\164\154\145\040\173\040\157\160\141\143\151\164\171\072" + "\040\061\073\040\175\012\012\162\157\167\056\145\156\164\162\171" + "\056\167\141\162\156\151\156\147\040\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\054\040\162\157\167\056" + "\163\160\151\156\056\167\141\162\156\151\156\147\040\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\100\167\141\162\156\151\156\147\137\142\147\137\143" + "\157\154\157\162\073\040\143\157\154\157\162\072\040\100\167\141" + "\162\156\151\156\147\137\146\147\137\143\157\154\157\162\073\040" + "\175\012\012\162\157\167\056\145\156\164\162\171\056\163\165\143" + "\143\145\163\163\054\040\162\157\167\056\163\160\151\156\056\163" + "\165\143\143\145\163\163\040\173\040\157\165\164\154\151\156\145" + "\072\040\060\040\163\157\154\151\144\040\164\162\141\156\163\160" + "\141\162\145\156\164\073\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\072\040\065\160\170\073\040\164\162\141\156" + "\163\151\164\151\157\156\072\040\157\165\164\154\151\156\145\055" + "\143\157\154\157\162\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\157\165\164\154\151\156\145\055\167\151\144\164\150\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154" + "\151\156\145\055\157\146\146\163\145\164\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175\012" + "\012\162\157\167\056\145\156\164\162\171\056\163\165\143\143\145" + "\163\163\056\146\157\143\165\163\145\144\054\040\162\157\167\056" + "\163\160\151\156\056\163\165\143\143\145\163\163\056\146\157\143" + "\165\163\145\144\040\173\040\157\165\164\154\151\156\145\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\065\051\073\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\072\040\062\160" + "\170\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\055\061\160\170\073\040\175\012\012\162\157\167\056" + "\145\156\164\162\171\056\163\165\143\143\145\163\163\040\164\145" + "\170\164\040\076\040\163\145\154\145\143\164\151\157\156\072\146" + "\157\143\165\163\055\167\151\164\150\151\156\054\040\162\157\167" + "\056\163\160\151\156\056\163\165\143\143\145\163\163\040\164\145" + "\170\164\040\076\040\163\145\154\145\143\164\151\157\156\072\146" + "\157\143\165\163\055\167\151\164\150\151\156\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\100\163\165\143\143\145\163\163\137\143" + "\157\154\157\162\054\060\056\062\051\073\040\175\012\012\162\157" + "\167\056\145\156\164\162\171\056\163\165\143\143\145\163\163\040" + "\164\145\170\164\040\076\040\143\165\162\163\157\162\055\150\141" + "\156\144\154\145\040\076\040\143\157\156\164\145\156\164\163\054" + "\040\162\157\167\056\163\160\151\156\056\163\165\143\143\145\163" + "\163\040\164\145\170\164\040\076\040\143\165\162\163\157\162\055" + "\150\141\156\144\154\145\040\076\040\143\157\156\164\145\156\164" + "\163\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\143\165\162\162\145\156\164\103\157\154" + "\157\162\073\040\175\012\012\162\157\167\056\145\156\164\162\171" + "\056\163\165\143\143\145\163\163\040\056\144\151\155\055\154\141" + "\142\145\154\054\040\162\157\167\056\145\156\164\162\171\056\163" + "\165\143\143\145\163\163\040\163\143\141\154\145\040\076\040\166" + "\141\154\165\145\054\040\162\157\167\056\145\156\164\162\171\056" + "\163\165\143\143\145\163\163\040\160\162\157\147\162\145\163\163" + "\142\141\162\040\076\040\164\145\170\164\054\040\162\157\167\056" + "\145\156\164\162\171\056\163\165\143\143\145\163\163\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\040\151\155\141\147\145" + "\056\145\170\160\141\156\144\145\162\055\162\157\167\055\141\162" + "\162\157\167\054\040\162\157\167\056\145\170\160\141\156\144\145" + "\162\040\162\157\167\056\145\156\164\162\171\056\163\165\143\143" + "\145\163\163\040\151\155\141\147\145\056\145\170\160\141\156\144" + "\145\162\055\162\157\167\055\141\162\162\157\167\054\040\162\157" + "\167\056\145\156\164\162\171\056\163\165\143\143\145\163\163\040" + "\163\160\151\156\142\165\164\164\157\156\040\076\040\164\145\170" + "\164\040\076\040\160\154\141\143\145\150\157\154\144\145\162\054" + "\040\162\157\167\056\145\156\164\162\171\056\163\165\143\143\145" + "\163\163\040\145\156\164\162\171\040\076\040\164\145\170\164\040" + "\076\040\160\154\141\143\145\150\157\154\144\145\162\054\040\162" + "\157\167\056\145\156\164\162\171\056\163\165\143\143\145\163\163" + "\040\154\141\142\145\154\056\163\145\160\141\162\141\164\157\162" + "\054\040\162\157\167\056\145\156\164\162\171\056\163\165\143\143" + "\145\163\163\040\162\157\167\056\160\162\157\160\145\162\164\171" + "\040\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040" + "\142\157\170\056\164\151\164\154\145\040\076\040\056\164\151\164" + "\154\145\054\040\162\157\167\056\145\156\164\162\171\056\163\165" + "\143\143\145\163\163\040\162\157\167\056\145\170\160\141\156\144" + "\145\162\056\160\162\157\160\145\162\164\171\040\142\157\170\040" + "\076\040\154\151\163\164\040\076\040\162\157\167\040\076\040\142" + "\157\170\056\150\145\141\144\145\162\040\076\040\142\157\170\056" + "\164\151\164\154\145\040\076\040\056\164\151\164\154\145\054\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\056\160\162\157" + "\160\145\162\164\171\040\162\157\167\056\145\156\164\162\171\056" + "\163\165\143\143\145\163\163\040\142\157\170\040\076\040\154\151" + "\163\164\040\076\040\162\157\167\040\076\040\142\157\170\056\150" + "\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164\154" + "\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167\056" + "\145\156\164\162\171\056\163\165\143\143\145\163\163\040\056\163" + "\165\142\164\151\164\154\145\054\040\162\157\167\056\163\160\151" + "\156\056\163\165\143\143\145\163\163\040\056\144\151\155\055\154" + "\141\142\145\154\054\040\162\157\167\056\163\160\151\156\056\163" + "\165\143\143\145\163\163\040\163\143\141\154\145\040\076\040\166" + "\141\154\165\145\054\040\162\157\167\056\163\160\151\156\056\163" + "\165\143\143\145\163\163\040\160\162\157\147\162\145\163\163\142" + "\141\162\040\076\040\164\145\170\164\054\040\162\157\167\056\163" + "\160\151\156\056\163\165\143\143\145\163\163\040\162\157\167\056" + "\145\170\160\141\156\144\145\162\040\151\155\141\147\145\056\145" + "\170\160\141\156\144\145\162\055\162\157\167\055\141\162\162\157" + "\167\054\040\162\157\167\056\145\170\160\141\156\144\145\162\040" + "\162\157\167\056\163\160\151\156\056\163\165\143\143\145\163\163" + "\040\151\155\141\147\145\056\145\170\160\141\156\144\145\162\055" + "\162\157\167\055\141\162\162\157\167\054\040\162\157\167\056\163" + "\160\151\156\056\163\165\143\143\145\163\163\040\163\160\151\156" + "\142\165\164\164\157\156\040\076\040\164\145\170\164\040\076\040" + "\160\154\141\143\145\150\157\154\144\145\162\054\040\162\157\167" + "\056\163\160\151\156\056\163\165\143\143\145\163\163\040\145\156" + "\164\162\171\040\076\040\164\145\170\164\040\076\040\160\154\141" + "\143\145\150\157\154\144\145\162\054\040\162\157\167\056\163\160" + "\151\156\056\163\165\143\143\145\163\163\040\154\141\142\145\154" + "\056\163\145\160\141\162\141\164\157\162\054\040\162\157\167\056" + "\163\160\151\156\056\163\165\143\143\145\163\163\040\162\157\167" + "\056\160\162\157\160\145\162\164\171\040\076\040\142\157\170\056" + "\150\145\141\144\145\162\040\076\040\142\157\170\056\164\151\164" + "\154\145\040\076\040\056\164\151\164\154\145\054\040\162\157\167" + "\056\163\160\151\156\056\163\165\143\143\145\163\163\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\056\160\162\157\160\145" + "\162\164\171\040\142\157\170\040\076\040\154\151\163\164\040\076" + "\040\162\157\167\040\076\040\142\157\170\056\150\145\141\144\145" + "\162\040\076\040\142\157\170\056\164\151\164\154\145\040\076\040" + "\056\164\151\164\154\145\054\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\056\160\162\157\160\145\162\164\171\040\162\157" + "\167\056\163\160\151\156\056\163\165\143\143\145\163\163\040\142" + "\157\170\040\076\040\154\151\163\164\040\076\040\162\157\167\040" + "\076\040\142\157\170\056\150\145\141\144\145\162\040\076\040\142" + "\157\170\056\164\151\164\154\145\040\076\040\056\164\151\164\154" + "\145\054\040\162\157\167\056\163\160\151\156\056\163\165\143\143" + "\145\163\163\040\056\163\165\142\164\151\164\154\145\040\173\040" + "\157\160\141\143\151\164\171\072\040\061\073\040\175\012\012\162" + "\157\167\056\145\156\164\162\171\056\163\165\143\143\145\163\163" + "\040\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\054\040\162\157\167\056\163\160\151\156\056\163\165\143" + "\143\145\163\163\040\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\100\163\165\143\143" + "\145\163\163\137\142\147\137\143\157\154\157\162\073\040\143\157" + "\154\157\162\072\040\100\163\165\143\143\145\163\163\137\146\147" + "\137\143\157\154\157\162\073\040\175\012\012\057\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\040\101\144\167\103" + "\157\155\142\157\122\157\167\040\052\040\052\057\012\162\157\167" + "\056\143\157\155\142\157\040\151\155\141\147\145\056\144\162\157" + "\160\144\157\167\156\055\141\162\162\157\167\072\144\151\163\141" + "\142\154\145\144\040\173\040\146\151\154\164\145\162\072\040\157" + "\160\141\143\151\164\171\050\060\056\065\051\073\040\175\012\012" + "\162\157\167\056\143\157\155\142\157\040\154\151\163\164\166\151" + "\145\167\056\151\156\154\151\156\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\156\157\156\145\073\040\142\157" + "\162\144\145\162\072\040\156\157\156\145\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\156\157\156\145\073\040\143\157" + "\154\157\162\072\040\151\156\150\145\162\151\164\073\040\175\012" + "\012\162\157\167\056\143\157\155\142\157\040\154\151\163\164\166" + "\151\145\167\056\151\156\154\151\156\145\054\040\162\157\167\056" + "\143\157\155\142\157\040\154\151\163\164\166\151\145\167\056\151" + "\156\154\151\156\145\072\144\151\163\141\142\154\145\144\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156" + "\145\073\040\143\157\154\157\162\072\040\151\156\150\145\162\151" + "\164\073\040\175\012\012\162\157\167\056\143\157\155\142\157\040" + "\160\157\160\157\166\145\162\040\076\040\143\157\156\164\145\156" + "\164\163\040\173\040\155\151\156\055\167\151\144\164\150\072\040" + "\061\062\060\160\170\073\040\175\012\012\162\157\167\056\143\157" + "\155\142\157\040\160\157\160\157\166\145\162\040\076\040\143\157" + "\156\164\145\156\164\163\040\056\143\157\155\142\157\055\163\145" + "\141\162\143\150\142\141\162\040\173\040\155\141\162\147\151\156" + "\072\040\066\160\170\073\040\175\012\012\162\157\167\056\143\157" + "\155\142\157\040\160\157\160\157\166\145\162\040\076\040\143\157" + "\156\164\145\156\164\163\040\056\143\157\155\142\157\055\163\145" + "\141\162\143\150\142\141\162\040\053\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\164\157\160\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\061\160\170\040\141\154\160\150\141\050\100\160\157\160\157\166" + "\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\073\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\142\157\164\164\157\155\054\040\141\154\160" + "\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040\164" + "\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051\073" + "\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\040\101\144\167\105\170\160\141\156" + "\144\145\162\122\157\167\040\052\040\052\057\012\154\151\163\164" + "\056\142\157\170\145\144\055\154\151\163\164\040\076\040\162\157" + "\167\054\040\154\151\163\164\056\143\157\156\164\145\156\164\040" + "\076\040\162\157\167\054\040\154\151\163\164\056\142\157\170\145" + "\144\055\154\151\163\164\040\076\040\162\157\167\056\145\170\160" + "\141\156\144\145\162\040\162\157\167\056\150\145\141\144\145\162" + "\054\040\154\151\163\164\056\143\157\156\164\145\156\164\040\076" + "\040\162\157\167\056\145\170\160\141\156\144\145\162\040\162\157" + "\167\056\150\145\141\144\145\162\054\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\040\154\151\163\164\056\156\145\163\164" + "\145\144\040\076\040\162\157\167\040\173\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\072\040\061\160\170\040\163\157" + "\154\151\144\040\100\143\141\162\144\137\163\150\141\144\145\137" + "\143\157\154\157\162\073\040\175\012\012\154\151\163\164\056\142" + "\157\170\145\144\055\154\151\163\164\040\076\040\162\157\167\054" + "\040\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040" + "\162\157\167\054\040\154\151\163\164\056\142\157\170\145\144\055" + "\154\151\163\164\040\076\040\162\157\167\056\145\170\160\141\156" + "\144\145\162\040\162\157\167\056\150\145\141\144\145\162\054\040" + "\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056" + "\150\145\141\144\145\162\054\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\040\154\151\163\164\056\156\145\163\164\145\144" + "\040\076\040\162\157\167\040\173\040\157\165\164\154\151\156\145" + "\072\040\060\040\163\157\154\151\144\040\164\162\141\156\163\160" + "\141\162\145\156\164\073\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\072\040\065\160\170\073\040\164\162\141\156" + "\163\151\164\151\157\156\072\040\157\165\164\154\151\156\145\055" + "\143\157\154\157\162\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\157\165\164\154\151\156\145\055\167\151\144\164\150\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154" + "\151\156\145\055\157\146\146\163\145\164\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175\012" + "\012\154\151\163\164\056\142\157\170\145\144\055\154\151\163\164" + "\040\076\040\162\157\167\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\154\151\163\164" + "\056\143\157\156\164\145\156\164\040\076\040\162\157\167\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\054\040\154\151\163\164\056\142\157\170\145\144\055\154" + "\151\163\164\040\076\040\162\157\167\056\145\170\160\141\156\144" + "\145\162\040\162\157\167\056\150\145\141\144\145\162\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\054\040\154\151\163\164\056\143\157\156\164\145\156\164\040" + "\076\040\162\157\167\056\145\170\160\141\156\144\145\162\040\162" + "\157\167\056\150\145\141\144\145\162\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\154\151\163\164" + "\056\156\145\163\164\145\144\040\076\040\162\157\167\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\143\157\154\157\162\054\060\056\065\051\073\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\072\040\062\160\170\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\055\061\160\170\073\040\175\012\012\056\157\163\144\040\154" + "\151\163\164\056\142\157\170\145\144\055\154\151\163\164\040\076" + "\040\162\157\167\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\056\157\163\144\040\154" + "\151\163\164\056\143\157\156\164\145\156\164\040\076\040\162\157" + "\167\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\056\157\163\144\040\154\151\163\164" + "\056\142\157\170\145\144\055\154\151\163\164\040\076\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056\150" + "\145\141\144\145\162\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\054\040\154\151\163\164\056" + "\142\157\170\145\144\055\154\151\163\164\040\076\040\162\157\167" + "\056\145\170\160\141\156\144\145\162\040\056\157\163\144\040\162" + "\157\167\056\150\145\141\144\145\162\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\056" + "\157\163\144\040\154\151\163\164\056\143\157\156\164\145\156\164" + "\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162\040" + "\162\157\167\056\150\145\141\144\145\162\072\146\157\143\165\163" + "\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040" + "\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\056\157\163\144" + "\040\162\157\167\056\150\145\141\144\145\162\072\146\157\143\165" + "\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145\054" + "\040\056\157\163\144\040\162\157\167\056\145\170\160\141\156\144" + "\145\162\040\154\151\163\164\056\156\145\163\164\145\144\040\076" + "\040\162\157\167\072\146\157\143\165\163\072\146\157\143\165\163" + "\055\166\151\163\151\142\154\145\054\040\162\157\167\056\145\170" + "\160\141\156\144\145\162\040\056\157\163\144\040\154\151\163\164" + "\056\156\145\163\164\145\144\040\076\040\162\157\167\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\072\040\162\147\142\141\050\062\065\065\054\040\062\065\065" + "\054\040\062\065\065\054\040\060\056\065\051\073\040\175\012\012" + "\154\151\163\164\056\142\157\170\145\144\055\154\151\163\164\040" + "\076\040\162\157\167\056\141\143\164\151\166\141\164\141\142\154" + "\145\072\156\157\164\050\072\163\145\154\145\143\164\145\144\051" + "\072\150\157\166\145\162\054\040\154\151\163\164\056\143\157\156" + "\164\145\156\164\040\076\040\162\157\167\056\141\143\164\151\166" + "\141\164\141\142\154\145\072\156\157\164\050\072\163\145\154\145" + "\143\164\145\144\051\072\150\157\166\145\162\054\040\154\151\163" + "\164\056\142\157\170\145\144\055\154\151\163\164\040\076\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056" + "\150\145\141\144\145\162\056\141\143\164\151\166\141\164\141\142" + "\154\145\072\156\157\164\050\072\163\145\154\145\143\164\145\144" + "\051\072\150\157\166\145\162\054\040\154\151\163\164\056\143\157" + "\156\164\145\156\164\040\076\040\162\157\167\056\145\170\160\141" + "\156\144\145\162\040\162\157\167\056\150\145\141\144\145\162\056" + "\141\143\164\151\166\141\164\141\142\154\145\072\156\157\164\050" + "\072\163\145\154\145\143\164\145\144\051\072\150\157\166\145\162" + "\054\040\162\157\167\056\145\170\160\141\156\144\145\162\040\154" + "\151\163\164\056\156\145\163\164\145\144\040\076\040\162\157\167" + "\056\141\143\164\151\166\141\164\141\142\154\145\072\156\157\164" + "\050\072\163\145\154\145\143\164\145\144\051\072\150\157\166\145" + "\162\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\060\063\051\073\040" + "\175\012\012\154\151\163\164\056\142\157\170\145\144\055\154\151" + "\163\164\040\076\040\162\157\167\056\141\143\164\151\166\141\164" + "\141\142\154\145\072\156\157\164\050\072\163\145\154\145\143\164" + "\145\144\051\072\141\143\164\151\166\145\054\040\154\151\163\164" + "\056\143\157\156\164\145\156\164\040\076\040\162\157\167\056\141" + "\143\164\151\166\141\164\141\142\154\145\072\156\157\164\050\072" + "\163\145\154\145\143\164\145\144\051\072\141\143\164\151\166\145" + "\054\040\154\151\163\164\056\142\157\170\145\144\055\154\151\163" + "\164\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\040\162\157\167\056\150\145\141\144\145\162\056\141\143\164\151" + "\166\141\164\141\142\154\145\072\156\157\164\050\072\163\145\154" + "\145\143\164\145\144\051\072\141\143\164\151\166\145\054\040\154" + "\151\163\164\056\143\157\156\164\145\156\164\040\076\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056\150" + "\145\141\144\145\162\056\141\143\164\151\166\141\164\141\142\154" + "\145\072\156\157\164\050\072\163\145\154\145\143\164\145\144\051" + "\072\141\143\164\151\166\145\054\040\162\157\167\056\145\170\160" + "\141\156\144\145\162\040\154\151\163\164\056\156\145\163\164\145" + "\144\040\076\040\162\157\167\056\141\143\164\151\166\141\164\141" + "\142\154\145\072\156\157\164\050\072\163\145\154\145\143\164\145" + "\144\051\072\141\143\164\151\166\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\060\070\051\073\040\175\012\012\154\151\163\164\056" + "\142\157\170\145\144\055\154\151\163\164\040\076\040\162\157\167" + "\056\141\143\164\151\166\141\164\141\142\154\145\056\150\141\163" + "\055\157\160\145\156\055\160\157\160\165\160\072\156\157\164\050" + "\072\163\145\154\145\143\164\145\144\051\054\040\154\151\163\164" + "\056\143\157\156\164\145\156\164\040\076\040\162\157\167\056\141" + "\143\164\151\166\141\164\141\142\154\145\056\150\141\163\055\157" + "\160\145\156\055\160\157\160\165\160\072\156\157\164\050\072\163" + "\145\154\145\143\164\145\144\051\054\040\154\151\163\164\056\142" + "\157\170\145\144\055\154\151\163\164\040\076\040\162\157\167\056" + "\145\170\160\141\156\144\145\162\040\162\157\167\056\150\145\141" + "\144\145\162\056\141\143\164\151\166\141\164\141\142\154\145\056" + "\150\141\163\055\157\160\145\156\055\160\157\160\165\160\072\156" + "\157\164\050\072\163\145\154\145\143\164\145\144\051\054\040\154" + "\151\163\164\056\143\157\156\164\145\156\164\040\076\040\162\157" + "\167\056\145\170\160\141\156\144\145\162\040\162\157\167\056\150" + "\145\141\144\145\162\056\141\143\164\151\166\141\164\141\142\154" + "\145\056\150\141\163\055\157\160\145\156\055\160\157\160\165\160" + "\072\156\157\164\050\072\163\145\154\145\143\164\145\144\051\054" + "\040\162\157\167\056\145\170\160\141\156\144\145\162\040\154\151" + "\163\164\056\156\145\163\164\145\144\040\076\040\162\157\167\056" + "\141\143\164\151\166\141\164\141\142\154\145\056\150\141\163\055" + "\157\160\145\156\055\160\157\160\165\160\072\156\157\164\050\072" + "\163\145\154\145\143\164\145\144\051\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\060\063\051\073\040\175\012\012\162\157\167\056\145" + "\170\160\141\156\144\145\162\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\156\157\156\145\073\040\160\141\144\144" + "\151\156\147\072\040\060\160\170\073\040\175\012\012\162\157\167" + "\056\145\170\160\141\156\144\145\162\040\076\040\142\157\170\040" + "\076\040\154\151\163\164\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\156\157\156\145\073\040\143\157\154\157\162" + "\072\040\151\156\150\145\162\151\164\073\040\175\012\012\162\157" + "\167\056\145\170\160\141\156\144\145\162\040\154\151\163\164\056" + "\156\145\163\164\145\144\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\100\143\141\162\144\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\065\051\073\040\143\157\154\157\162\072\040" + "\151\156\150\145\162\151\164\073\040\175\012\012\162\157\167\056" + "\145\170\160\141\156\144\145\162\040\151\155\141\147\145\056\145" + "\170\160\141\156\144\145\162\055\162\157\167\055\141\162\162\157" + "\167\040\173\040\164\162\141\156\163\151\164\151\157\156\072\040" + "\055\147\164\153\055\151\143\157\156\055\164\162\141\156\163\146" + "\157\162\155\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040" + "\175\012\012\162\157\167\056\145\170\160\141\156\144\145\162\040" + "\151\155\141\147\145\056\145\170\160\141\156\144\145\162\055\162" + "\157\167\055\141\162\162\157\167\072\144\151\162\050\154\164\162" + "\051\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072" + "\040\063\160\170\073\040\175\012\012\162\157\167\056\145\170\160" + "\141\156\144\145\162\040\151\155\141\147\145\056\145\170\160\141" + "\156\144\145\162\055\162\157\167\055\141\162\162\157\167\072\144" + "\151\162\050\162\164\154\051\040\173\040\155\141\162\147\151\156" + "\055\162\151\147\150\164\072\040\063\160\170\073\040\175\012\012" + "\162\157\167\056\145\170\160\141\156\144\145\162\040\151\155\141" + "\147\145\056\145\170\160\141\156\144\145\162\055\162\157\167\055" + "\141\162\162\157\167\072\144\151\162\050\154\164\162\051\040\173" + "\040\055\147\164\153\055\151\143\157\156\055\164\162\141\156\163" + "\146\157\162\155\072\040\162\157\164\141\164\145\050\060\056\065" + "\164\165\162\156\051\073\040\175\012\012\162\157\167\056\145\170" + "\160\141\156\144\145\162\040\151\155\141\147\145\056\145\170\160" + "\141\156\144\145\162\055\162\157\167\055\141\162\162\157\167\072" + "\144\151\162\050\162\164\154\051\040\173\040\055\147\164\153\055" + "\151\143\157\156\055\164\162\141\156\163\146\157\162\155\072\040" + "\162\157\164\141\164\145\050\055\060\056\065\164\165\162\156\051" + "\073\040\175\012\012\162\157\167\056\145\170\160\141\156\144\145" + "\162\040\151\155\141\147\145\056\145\170\160\141\156\144\145\162" + "\055\162\157\167\055\141\162\162\157\167\072\144\151\163\141\142" + "\154\145\144\040\173\040\146\151\154\164\145\162\072\040\157\160" + "\141\143\151\164\171\050\060\056\065\051\073\040\175\012\012\162" + "\157\167\056\145\170\160\141\156\144\145\162\072\143\150\145\143" + "\153\145\144\040\151\155\141\147\145\056\145\170\160\141\156\144" + "\145\162\055\162\157\167\055\141\162\162\157\167\040\173\040\055" + "\147\164\153\055\151\143\157\156\055\164\162\141\156\163\146\157" + "\162\155\072\040\162\157\164\141\164\145\050\060\164\165\162\156" + "\051\073\040\157\160\141\143\151\164\171\072\040\061\073\040\175" + "\012\012\162\157\167\056\145\170\160\141\156\144\145\162\072\143" + "\150\145\143\153\145\144\040\151\155\141\147\145\056\145\170\160" + "\141\156\144\145\162\055\162\157\167\055\141\162\162\157\167\072" + "\156\157\164\050\072\144\151\163\141\142\154\145\144\051\040\173" + "\040\143\157\154\157\162\072\040\100\141\143\143\145\156\164\137" + "\143\157\154\157\162\073\040\175\012\012\056\157\163\144\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\072\143\150\145\143" + "\153\145\144\040\151\155\141\147\145\056\145\170\160\141\156\144" + "\145\162\055\162\157\167\055\141\162\162\157\167\072\156\157\164" + "\050\072\144\151\163\141\142\154\145\144\051\040\173\040\143\157" + "\154\157\162\072\040\151\156\150\145\162\151\164\073\040\175\012" + "\012\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\040\102\157\170\145\144\040\114\151\163\164\163\040" + "\052\040\052\057\012\154\151\163\164\056\142\157\170\145\144\055" + "\154\151\163\164\040\076\040\162\157\167\056\145\170\160\141\156" + "\144\145\162\054\040\154\151\163\164\056\143\157\156\164\145\156" + "\164\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\040\173\040\142\157\162\144\145\162\072\040\156\157\156\145\073" + "\040\175\012\012\154\151\163\164\056\142\157\170\145\144\055\154" + "\151\163\164\040\076\040\162\157\167\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\154\151\163\164\056\143\157\156\164" + "\145\156\164\040\076\040\162\157\167\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\154\151\163\164\056\142\157\170\145" + "\144\055\154\151\163\164\040\076\040\162\157\167\056\145\170\160" + "\141\156\144\145\162\072\146\151\162\163\164\055\143\150\151\154" + "\144\040\162\157\167\056\150\145\141\144\145\162\054\040\154\151" + "\163\164\056\143\157\156\164\145\156\164\040\076\040\162\157\167" + "\056\145\170\160\141\156\144\145\162\072\146\151\162\163\164\055" + "\143\150\151\154\144\040\162\157\167\056\150\145\141\144\145\162" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\061\062\160\170\073" + "\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147\150" + "\164\055\162\141\144\151\165\163\072\040\061\062\160\170\073\040" + "\175\012\012\154\151\163\164\056\142\157\170\145\144\055\154\151" + "\163\164\040\076\040\162\157\167\072\154\141\163\164\055\143\150" + "\151\154\144\054\040\154\151\163\164\056\143\157\156\164\145\156" + "\164\040\076\040\162\157\167\072\154\141\163\164\055\143\150\151" + "\154\144\054\040\154\151\163\164\056\142\157\170\145\144\055\154" + "\151\163\164\040\076\040\162\157\167\056\145\170\160\141\156\144" + "\145\162\072\154\141\163\164\055\143\150\151\154\144\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\054\040\154\151\163" + "\164\056\142\157\170\145\144\055\154\151\163\164\040\076\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\072\154\141\163\164" + "\055\143\150\151\154\144\072\156\157\164\050\072\143\150\145\143" + "\153\145\144\051\040\162\157\167\056\150\145\141\144\145\162\054" + "\040\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\072\154\141\163" + "\164\055\143\150\151\154\144\072\156\157\164\050\072\143\150\145" + "\143\153\145\144\051\040\162\157\167\056\150\145\141\144\145\162" + "\054\040\154\151\163\164\056\142\157\170\145\144\055\154\151\163" + "\164\040\076\040\162\157\167\056\145\170\160\141\156\144\145\162" + "\072\154\141\163\164\055\143\150\151\154\144\072\143\150\145\143" + "\153\145\144\040\154\151\163\164\056\156\145\163\164\145\144\054" + "\040\154\151\163\164\056\143\157\156\164\145\156\164\040\076\040" + "\162\157\167\056\145\170\160\141\156\144\145\162\072\154\141\163" + "\164\055\143\150\151\154\144\072\143\150\145\143\153\145\144\040" + "\154\151\163\164\056\156\145\163\164\145\144\054\040\154\151\163" + "\164\056\142\157\170\145\144\055\154\151\163\164\040\076\040\162" + "\157\167\056\145\170\160\141\156\144\145\162\072\154\141\163\164" + "\055\143\150\151\154\144\072\143\150\145\143\153\145\144\040\154" + "\151\163\164\056\156\145\163\164\145\144\040\076\040\162\157\167" + "\072\154\141\163\164\055\143\150\151\154\144\054\040\154\151\163" + "\164\056\143\157\156\164\145\156\164\040\076\040\162\157\167\056" + "\145\170\160\141\156\144\145\162\072\154\141\163\164\055\143\150" + "\151\154\144\072\143\150\145\143\153\145\144\040\154\151\163\164" + "\056\156\145\163\164\145\144\040\076\040\162\157\167\072\154\141" + "\163\164\055\143\150\151\154\144\040\173\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\061\062\160\170\073\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055" + "\162\141\144\151\165\163\072\040\061\062\160\170\073\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\167\151\144\164" + "\150\072\040\060\073\040\175\012\012\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\076\040\143\157\156\164\145\156\164\163" + "\040\173\040\155\151\156\055\167\151\144\164\150\072\040\061\062" + "\060\160\170\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\163\143\162\157\154\154\142\141\162\056\166" + "\145\162\164\151\143\141\154\040\076\040\162\141\156\147\145\040" + "\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145" + "\162\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\063\060\160\170\073\040\175\012\012\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\142\157\170\056\151\156\154\151\156\145" + "\055\142\165\164\164\157\156\163\040\173\040\160\141\144\144\151" + "\156\147\072\040\060\040\061\062\160\170\073\040\175\012\012\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170\056" + "\151\156\154\151\156\145\055\142\165\164\164\157\156\163\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\155\157\144\145\154\040\173\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\063\062\160\170\073\040\155\151\156" + "\055\167\151\144\164\150\072\040\063\062\160\170\073\040\160\141" + "\144\144\151\156\147\072\040\060\073\040\142\157\162\144\145\162" + "\072\040\156\157\156\145\073\040\157\165\164\154\151\156\145\072" + "\040\156\157\156\145\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\156\157\156\145\073\040\175\012\012\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\142\157\170\056\151\156\154" + "\151\156\145\055\142\165\164\164\157\156\163\040\142\165\164\164" + "\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056" + "\155\157\144\145\154\072\163\145\154\145\143\164\145\144\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\061\051\073\040\175\012\012\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\142\157\170\056" + "\151\156\154\151\156\145\055\142\165\164\164\157\156\163\040\142" + "\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164" + "\157\156\056\155\157\144\145\154\072\163\145\154\145\143\164\145" + "\144\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\071\051\073\040\175\012\012\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\142\157\170\056\143\151\162\143\165" + "\154\141\162\055\142\165\164\164\157\156\163\040\173\040\160\141" + "\144\144\151\156\147\072\040\061\062\160\170\040\061\062\160\170" + "\040\066\160\170\073\040\175\012\012\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\142\157\170\056\143\151\162\143\165\154" + "\141\162\055\142\165\164\164\157\156\163\040\142\165\164\164\157" + "\156\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\155\157\144\145\154\040\173\040" + "\157\165\164\154\151\156\145\072\040\156\157\156\145\073\040\160" + "\141\144\144\151\156\147\072\040\061\061\160\170\073\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\060\040\060\040\060\040\061\160\170\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061" + "\065\051\073\040\175\012\012\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\142\157\170\056\143\151\162\143\165\154\141\162" + "\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156\056" + "\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055\142" + "\165\164\164\157\156\056\155\157\144\145\154\072\163\145\154\145" + "\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061\063" + "\051\073\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\142\157\170\056\143\151\162\143\165\154\141" + "\162\055\142\165\164\164\157\156\163\040\142\165\164\164\157\156" + "\056\143\151\162\143\165\154\141\162\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\155\157\144\145\154\072\163\145\154" + "\145\143\164\145\144\072\141\143\164\151\166\145\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\071\051\073\040\175\012\012\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\076\040\143\157\156" + "\164\145\156\164\163\040\173\040\160\141\144\144\151\156\147\072" + "\040\060\073\040\175\012\012\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\076\040\143\157\156\164\145\156\164\163\040\076" + "\040\163\164\141\143\153\040\076\040\142\157\170\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\076\040\143\157\156" + "\164\145\156\164\163\040\076\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\040\076\040\166\151\145\167\160\157\162" + "\164\040\076\040\163\164\141\143\153\040\076\040\142\157\170\040" + "\173\040\160\141\144\144\151\156\147\072\040\066\160\170\073\040" + "\175\012\012\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\163\145\160\141\162\141\164\157\162\040\173\040\155\141\162\147" + "\151\156\072\040\066\160\170\040\060\073\040\175\012\012\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\154\151\163\164\040" + "\163\145\160\141\162\141\164\157\162\040\173\040\155\141\162\147" + "\151\156\072\040\060\073\040\175\012\012\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\141\143\143\145\154\145\162\141\164" + "\157\162\040\173\040\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\065\065\051\073\040\175\012\012\160\157\160\157\166\145\162" + "\056\155\145\156\165\040\141\143\143\145\154\145\162\141\164\157" + "\162\072\144\151\162\050\154\164\162\051\040\173\040\155\141\162" + "\147\151\156\055\154\145\146\164\072\040\061\062\160\170\073\040" + "\175\012\012\160\157\160\157\166\145\162\056\155\145\156\165\040" + "\141\143\143\145\154\145\162\141\164\157\162\072\144\151\162\050" + "\162\164\154\051\040\173\040\155\141\162\147\151\156\055\162\151" + "\147\150\164\072\040\061\062\160\170\073\040\175\012\012\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\143\150\145\143\153" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\162" + "\141\144\151\157\040\173\040\155\151\156\055\167\151\144\164\150" + "\072\040\061\064\160\170\073\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\061\064\160\170\073\040\055\147\164\153\055\151" + "\143\157\156\055\163\151\172\145\072\040\061\064\160\170\073\040" + "\160\141\144\144\151\156\147\072\040\062\160\170\073\040\175\012" + "\012\160\157\160\157\166\145\162\056\155\145\156\165\040\143\150" + "\145\143\153\054\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\143\150\145\143\153\072\150\157\166\145\162\072\143\150" + "\145\143\153\145\144\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\143\150\145\143\153\072\150\157\166\145\162\072" + "\151\156\144\145\164\145\162\155\151\156\141\164\145\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\143\150\145\143" + "\153\072\150\157\166\145\162\072\156\157\164\050\072\143\150\145" + "\143\153\145\144\051\072\156\157\164\050\072\151\156\144\145\164" + "\145\162\155\151\156\141\164\145\051\054\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\143\150\145\143\153\072\141\143" + "\164\151\166\145\072\143\150\145\143\153\145\144\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\143\150\145\143\153" + "\072\141\143\164\151\166\145\072\151\156\144\145\164\145\162\155" + "\151\156\141\164\145\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\143\150\145\143\153\072\141\143\164\151\166\145" + "\072\156\157\164\050\072\143\150\145\143\153\145\144\051\072\156" + "\157\164\050\072\151\156\144\145\164\145\162\155\151\156\141\164" + "\145\051\054\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\162\141\144\151\157\054\040\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\162\141\144\151\157\072\150\157\166\145\162" + "\072\143\150\145\143\153\145\144\054\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\162\141\144\151\157\072\150\157\166" + "\145\162\072\151\156\144\145\164\145\162\155\151\156\141\164\145" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\162" + "\141\144\151\157\072\150\157\166\145\162\072\156\157\164\050\072" + "\143\150\145\143\153\145\144\051\072\156\157\164\050\072\151\156" + "\144\145\164\145\162\155\151\156\141\164\145\051\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\162\141\144\151\157" + "\072\141\143\164\151\166\145\072\143\150\145\143\153\145\144\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\162\141" + "\144\151\157\072\141\143\164\151\166\145\072\151\156\144\145\164" + "\145\162\155\151\156\141\164\145\054\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\162\141\144\151\157\072\141\143\164" + "\151\166\145\072\156\157\164\050\072\143\150\145\143\153\145\144" + "\051\072\156\157\164\050\072\151\156\144\145\164\145\162\155\151" + "\156\141\164\145\051\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\072\040\156\157\156\145\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\156\157\156\145\073\040\143\157\154\157" + "\162\072\040\151\156\150\145\162\151\164\073\040\175\012\012\056" + "\157\163\144\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\143\150\145\143\153\054\040\056\157\163\144\040\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\162\141\144\151\157\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156\157" + "\156\145\073\040\143\157\154\157\162\072\040\151\156\150\145\162" + "\151\164\073\040\175\012\012\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\162\141\144\151\157\040\173\040\160\141\144\144" + "\151\156\147\072\040\061\160\170\073\040\142\157\162\144\145\162" + "\072\040\061\160\170\040\163\157\154\151\144\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\063\051\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\143\150\145\143\153\056\154\145\146\164\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\162\141" + "\144\151\157\056\154\145\146\164\054\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\141\162\162\157\167\056\154\145\146" + "\164\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072" + "\040\055\062\160\170\073\040\155\141\162\147\151\156\055\162\151" + "\147\150\164\072\040\066\160\170\073\040\175\012\012\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\143\150\145\143\153\056" + "\162\151\147\150\164\054\040\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\162\141\144\151\157\056\162\151\147\150\164\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\141\162" + "\162\157\167\056\162\151\147\150\164\040\173\040\155\141\162\147" + "\151\156\055\154\145\146\164\072\040\066\160\170\073\040\155\141" + "\162\147\151\156\055\162\151\147\150\164\072\040\055\062\160\170" + "\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\155\157\144\145\154\142\165\164\164\157\156\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\063\062\160\170" + "\073\040\155\151\156\055\167\151\144\164\150\072\040\064\060\160" + "\170\073\040\160\141\144\144\151\156\147\072\040\060\040\061\062" + "\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\066\160\170\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\155\157\144\145\154\142\165\164" + "\164\157\156\072\150\157\166\145\162\054\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\155\157\144\145\154\142\165\164" + "\164\157\156\072\163\145\154\145\143\164\145\144\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\051\073\040\175\012\012\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\155\157\144\145\154\142" + "\165\164\164\157\156\072\141\143\164\151\166\145\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\071\051\073\040\175\012\012\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\155\157\144\145\154" + "\142\165\164\164\157\156\040\141\162\162\157\167\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145\073" + "\040\155\151\156\055\167\151\144\164\150\072\040\061\066\160\170" + "\073\040\155\151\156\055\150\145\151\147\150\164\072\040\061\066" + "\160\170\073\040\157\160\141\143\151\164\171\072\040\060\056\063" + "\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\155\157\144\145\154\142\165\164\164\157\156\040\141\162" + "\162\157\167\072\150\157\166\145\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\156\157\156\145\073\040\175\012" + "\012\160\157\160\157\166\145\162\056\155\145\156\165\040\155\157" + "\144\145\154\142\165\164\164\157\156\040\141\162\162\157\167\072" + "\144\151\163\141\142\154\145\144\040\173\040\146\151\154\164\145" + "\162\072\040\157\160\141\143\151\164\171\050\060\056\065\051\073" + "\040\175\012\012\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\155\157\144\145\154\142\165\164\164\157\156\040\141\162\162" + "\157\167\056\154\145\146\164\040\173\040\055\147\164\153\055\151" + "\143\157\156\055\163\157\165\162\143\145\072\040\055\147\164\153" + "\055\151\143\157\156\164\150\145\155\145\050\042\147\157\055\160" + "\162\145\166\151\157\165\163\055\163\171\155\142\157\154\151\143" + "\042\051\073\040\175\012\012\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\155\157\144\145\154\142\165\164\164\157\156\040" + "\141\162\162\157\167\056\162\151\147\150\164\040\173\040\055\147" + "\164\153\055\151\143\157\156\055\163\157\165\162\143\145\072\040" + "\055\147\164\153\055\151\143\157\156\164\150\145\155\145\050\042" + "\147\157\055\156\145\170\164\055\163\171\155\142\157\154\151\143" + "\042\051\073\040\175\012\012\160\157\160\157\166\145\162\056\155" + "\145\156\165\040\154\141\142\145\154\056\164\151\164\154\145\040" + "\173\040\146\157\156\164\055\167\145\151\147\150\164\072\040\142" + "\157\154\144\073\040\160\141\144\144\151\156\147\072\040\064\160" + "\170\040\063\062\160\170\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\154\151\163\164\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\154\151\163\164\166" + "\151\145\167\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\156\157\156\145\073\040\143\157\154\157\162\072\040\151" + "\156\150\145\162\151\164\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\154\151\163\164\040\076\040\162" + "\157\167\054\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\154\151\163\164\166\151\145\167\040\076\040\162\157\167\040" + "\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072" + "\040\066\160\170\073\040\160\141\144\144\151\156\147\072\040\060" + "\040\061\062\160\170\073\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\063\062\160\170\073\040\155\151\156\055\167\151\144" + "\164\150\072\040\064\060\160\170\073\040\175\012\012\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\154\151\163\164\040\076" + "\040\162\157\167\072\163\145\154\145\143\164\145\144\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\154\151\163\164" + "\166\151\145\167\040\076\040\162\157\167\072\163\145\154\145\143" + "\164\145\144\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\156\157\156\145\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\154\151\163\164\040\076\040\162" + "\157\167\072\150\157\166\145\162\054\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\154\151\163\164\040\076\040\162\157" + "\167\056\141\143\164\151\166\141\164\141\142\154\145\072\150\157" + "\166\145\162\072\163\145\154\145\143\164\145\144\054\040\160\157" + "\160\157\166\145\162\056\155\145\156\165\040\154\151\163\164\166" + "\151\145\167\040\076\040\162\157\167\072\150\157\166\145\162\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\154\151" + "\163\164\166\151\145\167\040\076\040\162\157\167\056\141\143\164" + "\151\166\141\164\141\142\154\145\072\150\157\166\145\162\072\163" + "\145\154\145\143\164\145\144\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\051\073\040\175\012\012\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\154\151\163\164\040\076\040\162\157\167\072" + "\141\143\164\151\166\145\054\040\160\157\160\157\166\145\162\056" + "\155\145\156\165\040\154\151\163\164\040\076\040\162\157\167\056" + "\141\143\164\151\166\141\164\141\142\154\145\072\141\143\164\151" + "\166\145\072\163\145\154\145\143\164\145\144\054\040\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\154\151\163\164\166\151" + "\145\167\040\076\040\162\157\167\072\141\143\164\151\166\145\054" + "\040\160\157\160\157\166\145\162\056\155\145\156\165\040\154\151" + "\163\164\166\151\145\167\040\076\040\162\157\167\056\141\143\164" + "\151\166\141\164\141\142\154\145\072\141\143\164\151\166\145\072" + "\163\145\154\145\143\164\145\144\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\071\051\073\040\175\012\012\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\154\151\163\164\040\076\040\162\157" + "\167\056\150\141\163\055\157\160\145\156\055\160\157\160\165\160" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\154" + "\151\163\164\040\076\040\162\157\167\056\150\141\163\055\157\160" + "\145\156\055\160\157\160\165\160\056\141\143\164\151\166\141\164" + "\141\142\154\145\072\163\145\154\145\143\164\145\144\054\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\154\151\163\164" + "\166\151\145\167\040\076\040\162\157\167\056\150\141\163\055\157" + "\160\145\156\055\160\157\160\165\160\054\040\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\154\151\163\164\166\151\145\167" + "\040\076\040\162\157\167\056\150\141\163\055\157\160\145\156\055" + "\160\157\160\165\160\056\141\143\164\151\166\141\164\141\142\154" + "\145\072\163\145\154\145\143\164\145\144\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\061\051\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\155\145\156\165\040\154\151\163\164\040\076\040\162" + "\157\167\040\076\040\142\157\170\054\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\154\151\163\164\166\151\145\167\040" + "\076\040\162\157\167\040\076\040\142\157\170\040\173\040\142\157" + "\162\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160" + "\170\073\040\175\012\012\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\143\157\156\164\145\156\164\163\040\076\040\154\151" + "\163\164\054\040\160\157\160\157\166\145\162\056\155\145\156\165" + "\040\143\157\156\164\145\156\164\163\040\076\040\154\151\163\164" + "\166\151\145\167\054\040\160\157\160\157\166\145\162\056\155\145" + "\156\165\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\040\076\040\166\151\145\167\160\157\162\164\040\076\040\154" + "\151\163\164\054\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\040\076\040\154\151\163\164\166\151\145\167\040\173\040\160\141" + "\144\144\151\156\147\072\040\066\160\170\040\060\073\040\175\012" + "\012\160\157\160\157\166\145\162\056\155\145\156\165\040\143\157" + "\156\164\145\156\164\163\040\076\040\154\151\163\164\040\076\040" + "\162\157\167\054\040\160\157\160\157\166\145\162\056\155\145\156" + "\165\040\143\157\156\164\145\156\164\163\040\076\040\154\151\163" + "\164\166\151\145\167\040\076\040\162\157\167\054\040\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\040\076\040\166\151\145\167\160" + "\157\162\164\040\076\040\154\151\163\164\040\076\040\162\157\167" + "\054\040\160\157\160\157\166\145\162\056\155\145\156\165\040\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\040\076\040" + "\154\151\163\164\166\151\145\167\040\076\040\162\157\167\040\173" + "\040\155\141\162\147\151\156\072\040\060\040\066\160\170\073\040" + "\160\141\144\144\151\156\147\072\040\071\160\170\040\061\062\160" + "\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040\060" + "\073\040\175\012\012\155\145\156\165\142\141\162\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\055\061\160\170\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\061\065\051" + "\073\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155" + "\072\040\061\160\170\073\040\175\012\012\155\145\156\165\142\141" + "\162\040\076\040\151\164\145\155\040\173\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\061\066\160\170\073\040\160\141\144" + "\144\151\156\147\072\040\064\160\170\040\070\160\170\073\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066\160" + "\170\073\040\175\012\012\155\145\156\165\142\141\162\040\076\040" + "\151\164\145\155\072\163\145\154\145\143\164\145\144\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\061\051\073\040\175\012\012\155\145" + "\156\165\142\141\162\040\076\040\151\164\145\155\040\160\157\160" + "\157\166\145\162\056\155\145\156\165\040\160\157\160\157\166\145" + "\162\056\155\145\156\165\040\173\040\160\141\144\144\151\156\147" + "\072\040\060\040\060\040\064\160\170\040\060\073\040\175\012\012" + "\155\145\156\165\142\141\162\040\076\040\151\164\145\155\040\160" + "\157\160\157\166\145\162\056\155\145\156\165\040\160\157\160\157" + "\166\145\162\056\155\145\156\165\040\076\040\143\157\156\164\145" + "\156\164\163\040\173\040\155\141\162\147\151\156\072\040\060\073" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\061\062\160\170\073\040\175\012\012\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162\040" + "\155\145\156\165\142\141\162\054\040\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142" + "\141\162\040\155\145\156\165\142\141\162\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\156\157\156\145\073\040\160" + "\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040\060" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\040\107\164\153\115\145" + "\163\163\141\147\145\104\151\141\154\157\147\040\052\040\052\057" + "\012\167\151\156\144\157\167\056\144\151\141\154\157\147\056\155" + "\145\163\163\141\147\145\040\056\164\151\164\154\145\142\141\162" + "\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040\062" + "\060\160\170\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\156\157\156\145\073\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\156\157\156\145\073\040\142\157\162\144\145\162\055" + "\163\164\171\154\145\072\040\156\157\156\145\073\040\142\157\162" + "\144\145\162\055\164\157\160\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\067\160\170\073\040\142\157\162\144\145\162" + "\055\164\157\160\055\162\151\147\150\164\055\162\141\144\151\165" + "\163\072\040\067\160\170\073\040\175\012\012\167\151\156\144\157" + "\167\056\144\151\141\154\157\147\056\155\145\163\163\141\147\145" + "\040\142\157\170\056\144\151\141\154\157\147\055\166\142\157\170" + "\056\166\145\162\164\151\143\141\154\040\173\040\155\141\162\147" + "\151\156\055\164\157\160\072\040\066\160\170\073\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\062\064\160" + "\170\073\040\175\012\012\167\151\156\144\157\167\056\144\151\141" + "\154\157\147\056\155\145\163\163\141\147\145\040\142\157\170\056" + "\144\151\141\154\157\147\055\166\142\157\170\056\166\145\162\164" + "\151\143\141\154\040\076\040\142\157\170\040\076\040\142\157\170" + "\040\076\040\142\157\170\040\076\040\154\141\142\145\154\056\164" + "\151\164\154\145\040\173\040\146\157\156\164\055\167\145\151\147" + "\150\164\072\040\070\060\060\073\040\146\157\156\164\055\163\151" + "\172\145\072\040\061\065\160\164\073\040\175\012\012\167\151\156" + "\144\157\167\056\144\151\141\154\157\147\056\155\145\163\163\141" + "\147\145\056\143\163\144\040\173\040\142\157\162\144\145\162\055" + "\142\157\164\164\157\155\055\154\145\146\164\055\162\141\144\151" + "\165\163\072\040\061\063\160\170\073\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\061\063\160\170\073\040\175\012\012\167" + "\151\156\144\157\167\056\144\151\141\154\157\147\056\155\145\163" + "\163\141\147\145\056\143\163\144\040\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\141\162\145\141\040\173\040\142" + "\157\162\144\145\162\055\164\157\160\072\040\061\160\170\040\163" + "\157\154\151\144\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\065\051\073\040\155" + "\141\162\147\151\156\072\040\060\073\040\142\157\162\144\145\162" + "\055\163\160\141\143\151\156\147\072\040\060\073\040\175\012\012" + "\167\151\156\144\157\167\056\144\151\141\154\157\147\056\155\145" + "\163\163\141\147\145\056\143\163\144\040\056\144\151\141\154\157" + "\147\055\141\143\164\151\157\156\055\141\162\145\141\040\076\040" + "\142\165\164\164\157\156\040\173\040\160\141\144\144\151\156\147" + "\072\040\061\060\160\170\040\061\064\160\170\073\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\060\073\040\142" + "\157\162\144\145\162\072\040\156\157\156\145\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\154\151\160\072\040\160\141" + "\144\144\151\156\147\055\142\157\170\073\040\142\157\162\144\145" + "\162\055\154\145\146\164\072\040\061\160\170\040\163\157\154\151" + "\144\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\061\065\051\073\040\175\012\012\167" + "\151\156\144\157\167\056\144\151\141\154\157\147\056\155\145\163" + "\163\141\147\145\056\143\163\144\040\056\144\151\141\154\157\147" + "\055\141\143\164\151\157\156\055\141\162\145\141\040\076\040\142" + "\165\164\164\157\156\072\146\151\162\163\164\055\143\150\151\154" + "\144\040\173\040\142\157\162\144\145\162\055\142\157\164\164\157" + "\155\055\154\145\146\164\055\162\141\144\151\165\163\072\040\061" + "\063\160\170\073\040\142\157\162\144\145\162\055\154\145\146\164" + "\072\040\156\157\156\145\073\040\175\012\012\167\151\156\144\157" + "\167\056\144\151\141\154\157\147\056\155\145\163\163\141\147\145" + "\056\143\163\144\040\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\141\162\145\141\040\076\040\142\165\164\164\157" + "\156\072\154\141\163\164\055\143\150\151\154\144\040\173\040\142" + "\157\162\144\145\162\055\142\157\164\164\157\155\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\061\063\160\170\073" + "\040\175\012\012\167\151\156\144\157\167\056\144\151\141\154\157" + "\147\056\155\145\163\163\141\147\145\056\143\163\144\040\056\144" + "\151\141\154\157\147\055\141\143\164\151\157\156\055\141\162\145" + "\141\040\076\040\142\165\164\164\157\156\056\163\165\147\147\145" + "\163\164\145\144\055\141\143\164\151\157\156\040\173\040\143\157" + "\154\157\162\072\040\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\073\040\175\012\012\167\151\156\144\157\167\056\144\151" + "\141\154\157\147\056\155\145\163\163\141\147\145\056\143\163\144" + "\040\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\141\162\145\141\040\076\040\142\165\164\164\157\156\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\040\173\040\143\157\154\157\162\072\040\100\144\145\163\164\162" + "\165\143\164\151\166\145\137\143\157\154\157\162\073\040\175\012" + "\012\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\040\101\144\167\115\145\163\163\141\147" + "\145\104\151\141\154\157\147\040\052\040\052\057\012\167\151\156" + "\144\157\167\056\155\145\163\163\141\147\145\144\151\141\154\157" + "\147\054\040\144\151\141\154\157\147\055\150\157\163\164\040\076" + "\040\144\151\141\154\157\147\056\141\154\145\162\164\040\163\150" + "\145\145\164\054\040\167\151\156\144\157\167\056\144\151\141\154" + "\157\147\055\167\151\156\144\157\167\056\141\154\145\162\164\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\100\144\151\141\154\157\147\137\142\147\137\143" + "\157\154\157\162\073\040\143\157\154\157\162\072\040\100\144\151" + "\141\154\157\147\137\146\147\137\143\157\154\157\162\073\040\175" + "\012\012\167\151\156\144\157\167\056\155\145\163\163\141\147\145" + "\144\151\141\154\157\147\040\173\040\157\165\164\154\151\156\145" + "\072\040\156\157\156\145\073\040\175\012\012\144\151\141\154\157" + "\147\055\150\157\163\164\040\076\040\144\151\141\154\157\147\056" + "\141\154\145\162\164\056\146\154\157\141\164\151\156\147\040\163" + "\150\145\145\164\054\040\167\151\156\144\157\167\056\144\151\141" + "\154\157\147\055\167\151\156\144\157\167\056\141\154\145\162\164" + "\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\061\063\160\170\073\040\157\165\164\154\151\156\145\072" + "\040\156\157\156\145\073\040\175\012\012\167\151\156\144\157\167" + "\056\155\145\163\163\141\147\145\144\151\141\154\157\147\040\056" + "\155\145\163\163\141\147\145\055\141\162\145\141\054\040\144\151" + "\141\154\157\147\056\141\154\145\162\164\040\056\155\145\163\163" + "\141\147\145\055\141\162\145\141\040\173\040\160\141\144\144\151" + "\156\147\072\040\062\064\160\170\040\063\060\160\170\073\040\142" + "\157\162\144\145\162\055\163\160\141\143\151\156\147\072\040\062" + "\064\160\170\073\040\175\012\012\167\151\156\144\157\167\056\155" + "\145\163\163\141\147\145\144\151\141\154\157\147\040\056\155\145" + "\163\163\141\147\145\055\141\162\145\141\056\150\141\163\055\150" + "\145\141\144\151\156\147\056\150\141\163\055\142\157\144\171\054" + "\040\144\151\141\154\157\147\056\141\154\145\162\164\040\056\155" + "\145\163\163\141\147\145\055\141\162\145\141\056\150\141\163\055" + "\150\145\141\144\151\156\147\056\150\141\163\055\142\157\144\171" + "\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156" + "\147\072\040\061\060\160\170\073\040\175\012\012\167\151\156\144" + "\157\167\056\155\145\163\163\141\147\145\144\151\141\154\157\147" + "\040\056\162\145\163\160\157\156\163\145\055\141\162\145\141\040" + "\076\040\142\165\164\164\157\156\054\040\144\151\141\154\157\147" + "\056\141\154\145\162\164\040\056\162\145\163\160\157\156\163\145" + "\055\141\162\145\141\040\076\040\142\165\164\164\157\156\040\173" + "\040\160\141\144\144\151\156\147\072\040\061\060\160\170\040\061" + "\064\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\060\073\040\175\012\012\167\151\156\144\157\167" + "\056\155\145\163\163\141\147\145\144\151\141\154\157\147\040\056" + "\162\145\163\160\157\156\163\145\055\141\162\145\141\040\076\040" + "\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144" + "\054\040\144\151\141\154\157\147\056\141\154\145\162\164\040\056" + "\162\145\163\160\157\156\163\145\055\141\162\145\141\040\076\040" + "\142\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144" + "\040\173\040\143\157\154\157\162\072\040\100\141\143\143\145\156" + "\164\137\143\157\154\157\162\073\040\175\012\012\167\151\156\144" + "\157\167\056\155\145\163\163\141\147\145\144\151\141\154\157\147" + "\040\056\162\145\163\160\157\156\163\145\055\141\162\145\141\040" + "\076\040\142\165\164\164\157\156\056\144\145\163\164\162\165\143" + "\164\151\166\145\054\040\144\151\141\154\157\147\056\141\154\145" + "\162\164\040\056\162\145\163\160\157\156\163\145\055\141\162\145" + "\141\040\076\040\142\165\164\164\157\156\056\144\145\163\164\162" + "\165\143\164\151\166\145\040\173\040\143\157\154\157\162\072\040" + "\100\144\145\163\164\162\165\143\164\151\166\145\137\143\157\154" + "\157\162\073\040\175\012\012\167\151\156\144\157\167\056\155\145" + "\163\163\141\147\145\144\151\141\154\157\147\040\056\162\145\163" + "\160\157\156\163\145\055\141\162\145\141\072\156\157\164\050\056" + "\143\157\155\160\141\143\164\051\040\076\040\142\165\164\164\157" + "\156\054\040\144\151\141\154\157\147\056\141\154\145\162\164\040" + "\056\162\145\163\160\157\156\163\145\055\141\162\145\141\072\156" + "\157\164\050\056\143\157\155\160\141\143\164\051\040\076\040\142" + "\165\164\164\157\156\040\173\040\155\141\162\147\151\156\055\164" + "\157\160\072\040\055\061\160\170\073\040\155\141\162\147\151\156" + "\055\162\151\147\150\164\072\040\055\061\160\170\073\040\155\141" + "\162\147\151\156\055\154\145\146\164\072\040\055\061\160\170\073" + "\040\175\012\012\167\151\156\144\157\167\056\155\145\163\163\141" + "\147\145\144\151\141\154\157\147\040\056\162\145\163\160\157\156" + "\163\145\055\141\162\145\141\072\156\157\164\050\056\143\157\155" + "\160\141\143\164\051\040\076\040\142\165\164\164\157\156\072\146" + "\151\162\163\164\055\143\150\151\154\144\072\144\151\162\050\154" + "\164\162\051\054\040\167\151\156\144\157\167\056\155\145\163\163" + "\141\147\145\144\151\141\154\157\147\040\056\162\145\163\160\157" + "\156\163\145\055\141\162\145\141\072\156\157\164\050\056\143\157" + "\155\160\141\143\164\051\040\076\040\142\165\164\164\157\156\072" + "\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050\162" + "\164\154\051\054\040\144\151\141\154\157\147\056\141\154\145\162" + "\164\040\056\162\145\163\160\157\156\163\145\055\141\162\145\141" + "\072\156\157\164\050\056\143\157\155\160\141\143\164\051\040\076" + "\040\142\165\164\164\157\156\072\146\151\162\163\164\055\143\150" + "\151\154\144\072\144\151\162\050\154\164\162\051\054\040\144\151" + "\141\154\157\147\056\141\154\145\162\164\040\056\162\145\163\160" + "\157\156\163\145\055\141\162\145\141\072\156\157\164\050\056\143" + "\157\155\160\141\143\164\051\040\076\040\142\165\164\164\157\156" + "\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050" + "\162\164\154\051\040\173\040\155\141\162\147\151\156\055\154\145" + "\146\164\072\040\060\073\040\175\012\012\167\151\156\144\157\167" + "\056\155\145\163\163\141\147\145\144\151\141\154\157\147\040\056" + "\162\145\163\160\157\156\163\145\055\141\162\145\141\072\156\157" + "\164\050\056\143\157\155\160\141\143\164\051\040\076\040\142\165" + "\164\164\157\156\072\154\141\163\164\055\143\150\151\154\144\072" + "\144\151\162\050\154\164\162\051\054\040\167\151\156\144\157\167" + "\056\155\145\163\163\141\147\145\144\151\141\154\157\147\040\056" + "\162\145\163\160\157\156\163\145\055\141\162\145\141\072\156\157" + "\164\050\056\143\157\155\160\141\143\164\051\040\076\040\142\165" + "\164\164\157\156\072\146\151\162\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\162\164\154\051\054\040\144\151\141\154\157" + "\147\056\141\154\145\162\164\040\056\162\145\163\160\157\156\163" + "\145\055\141\162\145\141\072\156\157\164\050\056\143\157\155\160" + "\141\143\164\051\040\076\040\142\165\164\164\157\156\072\154\141" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164\162" + "\051\054\040\144\151\141\154\157\147\056\141\154\145\162\164\040" + "\056\162\145\163\160\157\156\163\145\055\141\162\145\141\072\156" + "\157\164\050\056\143\157\155\160\141\143\164\051\040\076\040\142" + "\165\164\164\157\156\072\146\151\162\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\162\164\154\051\040\173\040\155\141\162" + "\147\151\156\055\162\151\147\150\164\072\040\060\073\040\175\012" + "\012\167\151\156\144\157\167\056\155\145\163\163\141\147\145\144" + "\151\141\154\157\147\040\056\162\145\163\160\157\156\163\145\055" + "\141\162\145\141\056\143\157\155\160\141\143\164\040\076\040\142" + "\165\164\164\157\156\054\040\144\151\141\154\157\147\056\141\154" + "\145\162\164\040\056\162\145\163\160\157\156\163\145\055\141\162" + "\145\141\056\143\157\155\160\141\143\164\040\076\040\142\165\164" + "\164\157\156\040\173\040\155\141\162\147\151\156\055\164\157\160" + "\072\040\055\061\160\170\073\040\155\141\162\147\151\156\055\142" + "\157\164\164\157\155\072\040\055\061\160\170\073\040\175\012\012" + "\167\151\156\144\157\167\056\155\145\163\163\141\147\145\144\151" + "\141\154\157\147\040\056\162\145\163\160\157\156\163\145\055\141" + "\162\145\141\056\143\157\155\160\141\143\164\040\076\040\142\165" + "\164\164\157\156\072\146\151\162\163\164\055\143\150\151\154\144" + "\054\040\144\151\141\154\157\147\056\141\154\145\162\164\040\056" + "\162\145\163\160\157\156\163\145\055\141\162\145\141\056\143\157" + "\155\160\141\143\164\040\076\040\142\165\164\164\157\156\072\146" + "\151\162\163\164\055\143\150\151\154\144\040\173\040\155\141\162" + "\147\151\156\055\142\157\164\164\157\155\072\040\060\073\040\175" + "\012\012\167\151\156\144\157\167\056\155\145\163\163\141\147\145" + "\144\151\141\154\157\147\040\056\162\145\163\160\157\156\163\145" + "\055\141\162\145\141\072\156\157\164\050\056\143\157\155\160\141" + "\143\164\051\040\076\040\142\165\164\164\157\156\072\146\151\162" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\154\164\162" + "\051\054\040\167\151\156\144\157\167\056\155\145\163\163\141\147" + "\145\144\151\141\154\157\147\040\056\162\145\163\160\157\156\163" + "\145\055\141\162\145\141\072\156\157\164\050\056\143\157\155\160" + "\141\143\164\051\040\076\040\142\165\164\164\157\156\072\154\141" + "\163\164\055\143\150\151\154\144\072\144\151\162\050\162\164\154" + "\051\054\040\144\151\141\154\157\147\056\141\154\145\162\164\056" + "\146\154\157\141\164\151\156\147\040\056\162\145\163\160\157\156" + "\163\145\055\141\162\145\141\072\156\157\164\050\056\143\157\155" + "\160\141\143\164\051\040\076\040\142\165\164\164\157\156\072\146" + "\151\162\163\164\055\143\150\151\154\144\072\144\151\162\050\154" + "\164\162\051\054\040\144\151\141\154\157\147\056\141\154\145\162" + "\164\056\146\154\157\141\164\151\156\147\040\056\162\145\163\160" + "\157\156\163\145\055\141\162\145\141\072\156\157\164\050\056\143" + "\157\155\160\141\143\164\051\040\076\040\142\165\164\164\157\156" + "\072\154\141\163\164\055\143\150\151\154\144\072\144\151\162\050" + "\162\164\154\051\040\173\040\142\157\162\144\145\162\055\142\157" + "\164\164\157\155\055\154\145\146\164\055\162\141\144\151\165\163" + "\072\040\061\063\160\170\073\040\175\012\012\167\151\156\144\157" + "\167\056\155\145\163\163\141\147\145\144\151\141\154\157\147\040" + "\056\162\145\163\160\157\156\163\145\055\141\162\145\141\072\156" + "\157\164\050\056\143\157\155\160\141\143\164\051\040\076\040\142" + "\165\164\164\157\156\072\154\141\163\164\055\143\150\151\154\144" + "\072\144\151\162\050\154\164\162\051\054\040\167\151\156\144\157" + "\167\056\155\145\163\163\141\147\145\144\151\141\154\157\147\040" + "\056\162\145\163\160\157\156\163\145\055\141\162\145\141\072\156" + "\157\164\050\056\143\157\155\160\141\143\164\051\040\076\040\142" + "\165\164\164\157\156\072\146\151\162\163\164\055\143\150\151\154" + "\144\072\144\151\162\050\162\164\154\051\054\040\144\151\141\154" + "\157\147\056\141\154\145\162\164\056\146\154\157\141\164\151\156" + "\147\040\056\162\145\163\160\157\156\163\145\055\141\162\145\141" + "\072\156\157\164\050\056\143\157\155\160\141\143\164\051\040\076" + "\040\142\165\164\164\157\156\072\154\141\163\164\055\143\150\151" + "\154\144\072\144\151\162\050\154\164\162\051\054\040\144\151\141" + "\154\157\147\056\141\154\145\162\164\056\146\154\157\141\164\151" + "\156\147\040\056\162\145\163\160\157\156\163\145\055\141\162\145" + "\141\072\156\157\164\050\056\143\157\155\160\141\143\164\051\040" + "\076\040\142\165\164\164\157\156\072\146\151\162\163\164\055\143" + "\150\151\154\144\072\144\151\162\050\162\164\154\051\040\173\040" + "\142\157\162\144\145\162\055\142\157\164\164\157\155\055\162\151" + "\147\150\164\055\162\141\144\151\165\163\072\040\061\063\160\170" + "\073\040\175\012\012\167\151\156\144\157\167\056\155\145\163\163" + "\141\147\145\144\151\141\154\157\147\040\056\162\145\163\160\157" + "\156\163\145\055\141\162\145\141\056\143\157\155\160\141\143\164" + "\040\076\040\142\165\164\164\157\156\072\146\151\162\163\164\055" + "\143\150\151\154\144\054\040\144\151\141\154\157\147\056\141\154" + "\145\162\164\056\146\154\157\141\164\151\156\147\040\056\162\145" + "\163\160\157\156\163\145\055\141\162\145\141\056\143\157\155\160" + "\141\143\164\040\076\040\142\165\164\164\157\156\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\173\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\061\063\160\170\073\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\055\162\151\147\150\164\055" + "\162\141\144\151\165\163\072\040\061\063\160\170\073\040\175\012" + "\012\057\052\052\052\052\052\052\052\052\052\052\040\106\162\141" + "\155\145\163\040\052\040\052\057\012\146\162\141\155\145\054\040" + "\056\146\162\141\155\145\040\173\040\142\157\162\144\145\162\072" + "\040\061\160\170\040\163\157\154\151\144\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\061\065\051\073\040\175\012\012\146\162\141\155\145\040\173\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\061" + "\062\160\170\073\040\175\012\012\146\162\141\155\145\040\076\040" + "\154\141\142\145\154\040\173\040\155\141\162\147\151\156\072\040" + "\064\160\170\073\040\175\012\012\057\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\040\123\145\160\141\162\141\164\157" + "\162\163\040\052\040\052\057\012\163\145\160\141\162\141\164\157" + "\162\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\061\065\051\073\040\155\151\156\055\167\151" + "\144\164\150\072\040\061\160\170\073\040\155\151\156\055\150\145" + "\151\147\150\164\072\040\061\160\170\073\040\175\012\012\163\145" + "\160\141\162\141\164\157\162\056\163\160\141\143\145\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156" + "\145\073\040\175\012\012\163\145\160\141\162\141\164\157\162\056" + "\163\160\141\143\145\162\056\150\157\162\151\172\157\156\164\141" + "\154\040\173\040\155\151\156\055\167\151\144\164\150\072\040\061" + "\062\160\170\073\040\175\012\012\163\145\160\141\162\141\164\157" + "\162\056\163\160\141\143\145\162\056\166\145\162\164\151\143\141" + "\154\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\061\062\160\170\073\040\175\012\012\057\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\040" + "\101\160\160\040\116\157\164\151\146\151\143\141\164\151\157\156" + "\163\040\052\040\052\057\012\056\141\160\160\055\156\157\164\151" + "\146\151\143\141\164\151\157\156\040\173\040\160\141\144\144\151" + "\156\147\072\040\061\060\160\170\073\040\142\157\162\144\145\162" + "\055\163\160\141\143\151\156\147\072\040\061\060\160\170\073\040" + "\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040\060" + "\040\060\040\061\062\160\170\040\061\062\160\170\073\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\067\051\073\040\142\141\143\153\147\162\157\165\156\144\055\151" + "\155\141\147\145\072\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\142\157\164\164\157\155\054" + "\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060" + "\056\062\051\054\040\164\162\141\156\163\160\141\162\145\156\164" + "\040\062\160\170\051\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\154\151\160\072\040\160\141\144\144\151\156\147\055" + "\142\157\170\073\040\175\012\012\056\141\160\160\055\156\157\164" + "\151\146\151\143\141\164\151\157\156\040\142\157\162\144\145\162" + "\040\173\040\142\157\162\144\145\162\072\040\156\157\156\145\073" + "\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052\040" + "\124\157\141\163\164\163\040\052\040\052\057\012\164\157\141\163" + "\164\040\173\040\155\141\162\147\151\156\072\040\061\062\160\170" + "\073\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072" + "\040\062\064\160\170\073\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\061\065\060\160\170\073\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160\170" + "\073\040\160\141\144\144\151\156\147\072\040\066\160\170\073\040" + "\175\012\012\164\157\141\163\164\072\144\151\162\050\154\164\162" + "\051\040\173\040\160\141\144\144\151\156\147\055\154\145\146\164" + "\072\040\061\062\160\170\073\040\175\012\012\164\157\141\163\164" + "\072\144\151\162\050\162\164\154\051\040\173\040\160\141\144\144" + "\151\156\147\055\162\151\147\150\164\072\040\061\062\160\170\073" + "\040\175\012\012\164\157\141\163\164\040\076\040\167\151\144\147" + "\145\164\040\173\040\155\141\162\147\151\156\072\040\060\040\066" + "\160\170\073\040\175\012\012\057\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\040\107\164\153\126\151\144\145\157\040" + "\052\040\052\057\012\166\151\144\145\157\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\142\154\141\143\153\073\040" + "\175\012\012\166\151\144\145\157\040\151\155\141\147\145\056\157" + "\163\144\040\173\040\155\151\156\055\167\151\144\164\150\072\040" + "\066\064\160\170\073\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\066\064\160\170\073\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\063\062\160\170\073\040\175\012\012" + "\057\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\040\101\144\167\101\142\157\165\164\127\151\156\144" + "\157\167\040\052\040\052\057\012\167\151\156\144\157\167\056\141" + "\142\157\165\164\040\056\155\141\151\156\055\160\141\147\145\040" + "\076\040\166\151\145\167\160\157\162\164\040\076\040\143\154\141" + "\155\160\040\076\040\142\157\170\054\040\144\151\141\154\157\147" + "\056\141\142\157\165\164\040\056\155\141\151\156\055\160\141\147" + "\145\040\076\040\166\151\145\167\160\157\162\164\040\076\040\143" + "\154\141\155\160\040\076\040\142\157\170\040\173\040\155\141\162" + "\147\151\156\072\040\061\062\160\170\073\040\142\157\162\144\145" + "\162\055\163\160\141\143\151\156\147\072\040\066\160\170\073\040" + "\175\012\012\167\151\156\144\157\167\056\141\142\157\165\164\040" + "\056\155\141\151\156\055\160\141\147\145\040\076\040\166\151\145" + "\167\160\157\162\164\040\076\040\143\154\141\155\160\040\076\040" + "\142\157\170\040\076\040\142\157\170\054\040\144\151\141\154\157" + "\147\056\141\142\157\165\164\040\056\155\141\151\156\055\160\141" + "\147\145\040\076\040\166\151\145\167\160\157\162\164\040\076\040" + "\143\154\141\155\160\040\076\040\142\157\170\040\076\040\142\157" + "\170\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\061\070\160\170\073\040\142\157\162\144\145\162\055\163\160\141" + "\143\151\156\147\072\040\061\070\160\170\073\040\155\141\162\147" + "\151\156\055\142\157\164\164\157\155\072\040\066\160\170\073\040" + "\175\012\012\167\151\156\144\157\167\056\141\142\157\165\164\040" + "\056\155\141\151\156\055\160\141\147\145\040\056\141\160\160\055" + "\166\145\162\163\151\157\156\054\040\144\151\141\154\157\147\056" + "\141\142\157\165\164\040\056\155\141\151\156\055\160\141\147\145" + "\040\056\141\160\160\055\166\145\162\163\151\157\156\040\173\040" + "\160\141\144\144\151\156\147\072\040\063\160\170\040\061\070\160" + "\170\073\040\143\157\154\157\162\072\040\100\141\143\143\145\156" + "\164\137\143\157\154\157\162\073\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\071\071\071\160\170\073\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\063\160\170\073\040" + "\175\012\012\167\151\156\144\157\167\056\141\142\157\165\164\040" + "\056\163\165\142\160\141\147\145\040\076\040\166\151\145\167\160" + "\157\162\164\040\076\040\143\154\141\155\160\040\076\040\142\157" + "\170\054\040\144\151\141\154\157\147\056\141\142\157\165\164\040" + "\056\163\165\142\160\141\147\145\040\076\040\166\151\145\167\160" + "\157\162\164\040\076\040\143\154\141\155\160\040\076\040\142\157" + "\170\040\173\040\155\141\162\147\151\156\072\040\061\070\160\170" + "\040\061\062\160\170\073\040\142\157\162\144\145\162\055\163\160" + "\141\143\151\156\147\072\040\061\070\160\170\073\040\175\012\012" + "\167\151\156\144\157\167\056\141\142\157\165\164\040\056\163\165" + "\142\160\141\147\145\040\076\040\143\154\141\155\160\040\076\040" + "\164\145\170\164\166\151\145\167\054\040\144\151\141\154\157\147" + "\056\141\142\157\165\164\040\056\163\165\142\160\141\147\145\040" + "\076\040\143\154\141\155\160\040\076\040\164\145\170\164\166\151" + "\145\167\040\173\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\156\157\156\145\073\040\143\157\154\157\162\072\040\151\156" + "\150\145\162\151\164\073\040\175\012\012\057\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\040\101\144\167" + "\123\164\141\164\165\163\120\141\147\145\040\052\040\052\057\012" + "\163\164\141\164\165\163\160\141\147\145\040\076\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\040\076\040\166\151" + "\145\167\160\157\162\164\040\076\040\142\157\170\040\173\040\155" + "\141\162\147\151\156\072\040\063\066\160\170\040\061\062\160\170" + "\073\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\063\066\160\170\073\040\175\012\012\163\164\141\164\165" + "\163\160\141\147\145\040\076\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\040\076\040\166\151\145\167\160\157\162" + "\164\040\076\040\142\157\170\040\076\040\143\154\141\155\160\040" + "\076\040\142\157\170\040\173\040\142\157\162\144\145\162\055\163" + "\160\141\143\151\156\147\072\040\061\062\160\170\073\040\175\012" + "\012\163\164\141\164\165\163\160\141\147\145\040\076\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\040\076\040\166" + "\151\145\167\160\157\162\164\040\076\040\142\157\170\040\076\040" + "\143\154\141\155\160\040\076\040\142\157\170\040\076\040\056\151" + "\143\157\156\040\173\040\055\147\164\153\055\151\143\157\156\055" + "\163\151\172\145\072\040\061\062\070\160\170\073\040\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\065\065\051\073\040\175\012" + "\012\163\164\141\164\165\163\160\141\147\145\040\076\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\040\076\040\166" + "\151\145\167\160\157\162\164\040\076\040\142\157\170\040\076\040" + "\143\154\141\155\160\040\076\040\142\157\170\040\076\040\056\151" + "\143\157\156\072\144\151\163\141\142\154\145\144\040\173\040\157" + "\160\141\143\151\164\171\072\040\060\056\065\073\040\175\012\012" + "\163\164\141\164\165\163\160\141\147\145\040\076\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\040\076\040\166\151" + "\145\167\160\157\162\164\040\076\040\142\157\170\040\076\040\143" + "\154\141\155\160\040\076\040\142\157\170\040\076\040\056\151\143" + "\157\156\072\156\157\164\050\072\154\141\163\164\055\143\150\151" + "\154\144\051\040\173\040\155\141\162\147\151\156\055\142\157\164" + "\164\157\155\072\040\062\064\160\170\073\040\175\012\012\163\164" + "\141\164\165\163\160\141\147\145\056\143\157\155\160\141\143\164" + "\040\076\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\040\076\040\166\151\145\167\160\157\162\164\040\076\040\142" + "\157\170\040\173\040\155\141\162\147\151\156\072\040\062\064\160" + "\170\040\061\062\160\170\073\040\142\157\162\144\145\162\055\163" + "\160\141\143\151\156\147\072\040\062\064\160\170\073\040\175\012" + "\012\163\164\141\164\165\163\160\141\147\145\056\143\157\155\160" + "\141\143\164\040\076\040\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\040\076\040\166\151\145\167\160\157\162\164\040" + "\076\040\142\157\170\040\076\040\143\154\141\155\160\040\076\040" + "\142\157\170\040\076\040\056\151\143\157\156\040\173\040\055\147" + "\164\153\055\151\143\157\156\055\163\151\172\145\072\040\071\066" + "\160\170\073\040\175\012\012\163\164\141\164\165\163\160\141\147" + "\145\056\143\157\155\160\141\143\164\040\076\040\163\143\162\157" + "\154\154\145\144\167\151\156\144\157\167\040\076\040\166\151\145" + "\167\160\157\162\164\040\076\040\142\157\170\040\076\040\143\154" + "\141\155\160\040\076\040\142\157\170\040\076\040\056\151\143\157" + "\156\072\156\157\164\050\072\154\141\163\164\055\143\150\151\154" + "\144\051\040\173\040\155\141\162\147\151\156\055\142\157\164\164" + "\157\155\072\040\061\062\160\170\073\040\175\012\012\163\164\141" + "\164\165\163\160\141\147\145\056\143\157\155\160\141\143\164\040" + "\076\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\040\076\040\166\151\145\167\160\157\162\164\040\076\040\142\157" + "\170\040\076\040\143\154\141\155\160\040\076\040\142\157\170\040" + "\076\040\056\164\151\164\154\145\040\173\040\146\157\156\164\055" + "\163\151\172\145\072\040\061\070\160\164\073\040\175\012\012\057" + "\052\040\103\141\162\144\163\040\052\057\012\163\150\157\162\164" + "\143\165\164\040\076\040\056\153\145\171\143\141\160\054\040\154" + "\151\163\164\056\142\157\170\145\144\055\154\151\163\164\054\040" + "\154\151\163\164\056\143\157\156\164\145\156\164\054\040\056\143" + "\141\162\144\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\143\141\162\144\137\142\147" + "\137\143\157\154\157\162\073\040\143\157\154\157\162\072\040\100" + "\143\141\162\144\137\146\147\137\143\157\154\157\162\073\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\061\062" + "\160\170\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\060\040\060\040\060\040\061\160\170\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\060\063\051\054\040\060" + "\040\061\160\170\040\063\160\170\040\061\160\170\040\162\147\142" + "\141\050\060\054\040\060\054\040\060\054\040\060\056\060\067\051" + "\054\040\060\040\062\160\170\040\066\160\170\040\062\160\170\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\060\063\051\073\040\175\012\012\056\157\163\144\040\163\150\157" + "\162\164\143\165\164\040\076\040\056\153\145\171\143\141\160\054" + "\040\056\157\163\144\040\154\151\163\164\056\142\157\170\145\144" + "\055\154\151\163\164\054\040\056\157\163\144\040\154\151\163\164" + "\056\143\157\156\164\145\156\164\054\040\163\150\157\162\164\143" + "\165\164\040\076\040\056\157\163\144\056\153\145\171\143\141\160" + "\054\040\154\151\163\164\056\157\163\144\056\142\157\170\145\144" + "\055\154\151\163\164\054\040\154\151\163\164\056\157\163\144\056" + "\143\157\156\164\145\156\164\054\040\056\157\163\144\040\056\143" + "\141\162\144\054\040\056\143\141\162\144\056\157\163\144\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\061\051\073\040\143\157\154\157" + "\162\072\040\151\156\150\145\162\151\164\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\156\157\156\145\073\040\175\012" + "\012\056\143\141\162\144\040\173\040\157\165\164\154\151\156\145" + "\072\040\060\040\163\157\154\151\144\040\164\162\141\156\163\160" + "\141\162\145\156\164\073\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\072\040\065\160\170\073\040\164\162\141\156" + "\163\151\164\151\157\156\072\040\157\165\164\154\151\156\145\055" + "\143\157\154\157\162\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\157\165\164\154\151\156\145\055\167\151\144\164\150\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154" + "\151\156\145\055\157\146\146\163\145\164\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\073\040\175\012\012\056\143\141\162\144\072" + "\146\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151" + "\142\154\145\040\173\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145" + "\156\164\137\143\157\154\157\162\054\060\056\065\051\073\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\072\040\062\160" + "\170\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\055\061\160\170\073\040\175\012\012\056\157\163\144" + "\040\056\143\141\162\144\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\056\143\141\162" + "\144\056\157\163\144\072\146\157\143\165\163\072\146\157\143\165" + "\163\055\166\151\163\151\142\154\145\040\173\040\157\165\164\154" + "\151\156\145\055\143\157\154\157\162\072\040\162\147\142\141\050" + "\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040\060" + "\056\065\051\073\040\175\012\012\056\143\141\162\144\056\141\143" + "\164\151\166\141\164\141\142\154\145\040\173\040\164\162\141\156" + "\163\151\164\151\157\156\072\040\157\165\164\154\151\156\145\055" + "\143\157\154\157\162\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\054\040\157\165\164\154\151\156\145\055\167\151\144\164\150\040" + "\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151" + "\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060" + "\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154" + "\151\156\145\055\157\146\146\163\145\164\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\142\141\143\153\147\162\157\165\156" + "\144\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\142\157" + "\170\055\163\150\141\144\157\167\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\073\040\175\012\012\056\143\141\162\144\056\141\143" + "\164\151\166\141\164\141\142\154\145\072\150\157\166\145\162\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\151\155\141\147\145\050\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\060" + "\063\051\051\073\040\175\012\012\056\143\141\162\144\056\141\143" + "\164\151\166\141\164\141\142\154\145\072\141\143\164\151\166\145" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\151\155\141\147\145\050\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\060\070\051\051\073\040\175\012\012\057\052\040\124\162\141\156" + "\163\151\164\151\157\156\040\163\150\141\144\157\167\163\040\052" + "\057\012\146\154\141\160\040\076\040\144\151\155\155\151\156\147" + "\054\040\154\145\141\146\154\145\164\040\076\040\144\151\155\155" + "\151\156\147\054\040\156\141\166\151\147\141\164\151\157\156\055" + "\166\151\145\167\040\076\040\144\151\155\155\151\156\147\054\040" + "\157\166\145\162\154\141\171\055\163\160\154\151\164\055\166\151" + "\145\167\040\076\040\144\151\155\155\151\156\147\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\100\163\150\141\144" + "\145\137\143\157\154\157\162\073\040\175\012\012\146\154\141\160" + "\040\076\040\163\150\141\144\157\167\054\040\154\145\141\146\154" + "\145\164\040\076\040\163\150\141\144\157\167\054\040\156\141\166" + "\151\147\141\164\151\157\156\055\166\151\145\167\040\076\040\163" + "\150\141\144\157\167\054\040\157\166\145\162\154\141\171\055\163" + "\160\154\151\164\055\166\151\145\167\040\076\040\163\150\141\144" + "\157\167\040\173\040\155\151\156\055\167\151\144\164\150\072\040" + "\065\066\160\170\073\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\065\066\160\170\073\040\175\012\012\146\154\141\160\040" + "\076\040\163\150\141\144\157\167\056\154\145\146\164\054\040\154" + "\145\141\146\154\145\164\040\076\040\163\150\141\144\157\167\056" + "\154\145\146\164\054\040\156\141\166\151\147\141\164\151\157\156" + "\055\166\151\145\167\040\076\040\163\150\141\144\157\167\056\154" + "\145\146\164\054\040\157\166\145\162\154\141\171\055\163\160\154" + "\151\164\055\166\151\145\167\040\076\040\163\150\141\144\157\167" + "\056\154\145\146\164\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\151\155\141\147\145\072\040\154\151\156\145\141\162" + "\055\147\162\141\144\151\145\156\164\050\164\157\040\162\151\147" + "\150\164\054\040\141\154\160\150\141\050\100\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\067\051\054\040\141\154\160" + "\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\061\064\051\040\064\060\160\170\054\040\141\154\160\150" + "\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\051\040\065\066\160\170\051\054\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\164\157\040\162\151\147\150" + "\164\054\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\064\051\054\040\141\154\160\150" + "\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\061\064\051\040\067\160\170\054\040\141\154\160\150\141\050" + "\100\163\150\141\144\145\137\143\157\154\157\162\054\060\051\040" + "\062\064\160\170\051\073\040\175\012\012\146\154\141\160\040\076" + "\040\163\150\141\144\157\167\056\162\151\147\150\164\054\040\154" + "\145\141\146\154\145\164\040\076\040\163\150\141\144\157\167\056" + "\162\151\147\150\164\054\040\156\141\166\151\147\141\164\151\157" + "\156\055\166\151\145\167\040\076\040\163\150\141\144\157\167\056" + "\162\151\147\150\164\054\040\157\166\145\162\154\141\171\055\163" + "\160\154\151\164\055\166\151\145\167\040\076\040\163\150\141\144" + "\157\167\056\162\151\147\150\164\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156" + "\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040" + "\154\145\146\164\054\040\141\154\160\150\141\050\100\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\051\054\040\141" + "\154\160\150\141\050\100\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\061\064\051\040\064\060\160\170\054\040\141\154" + "\160\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\051\040\065\066\160\170\051\054\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\154\145" + "\146\164\054\040\141\154\160\150\141\050\100\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\064\051\054\040\141\154\160" + "\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\061\064\051\040\067\160\170\054\040\141\154\160\150\141" + "\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060\051" + "\040\062\064\160\170\051\073\040\175\012\012\146\154\141\160\040" + "\076\040\163\150\141\144\157\167\056\165\160\054\040\154\145\141" + "\146\154\145\164\040\076\040\163\150\141\144\157\167\056\165\160" + "\054\040\156\141\166\151\147\141\164\151\157\156\055\166\151\145" + "\167\040\076\040\163\150\141\144\157\167\056\165\160\054\040\157" + "\166\145\162\154\141\171\055\163\160\154\151\164\055\166\151\145" + "\167\040\076\040\163\150\141\144\157\167\056\165\160\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145" + "\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\142\157\164\164\157\155\054\040\141\154\160" + "\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\051\054\040\141\154\160\150\141\050\100\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040\064" + "\060\160\170\054\040\141\154\160\150\141\050\100\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\051\040\065\066\160\170\051" + "\054\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\142\157\164\164\157\155\054\040\141\154\160" + "\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\064\051\054\040\141\154\160\150\141\050\100\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040\067" + "\160\170\054\040\141\154\160\150\141\050\100\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\051\040\062\064\160\170\051\073" + "\040\175\012\012\146\154\141\160\040\076\040\163\150\141\144\157" + "\167\056\144\157\167\156\054\040\154\145\141\146\154\145\164\040" + "\076\040\163\150\141\144\157\167\056\144\157\167\156\054\040\156" + "\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\056\144\157\167\156\054\040\157\166" + "\145\162\154\141\171\055\163\160\154\151\164\055\166\151\145\167" + "\040\076\040\163\150\141\144\157\167\056\144\157\167\156\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147" + "\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145" + "\156\164\050\164\157\040\164\157\160\054\040\141\154\160\150\141" + "\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\067\051\054\040\141\154\160\150\141\050\100\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\061\064\051\040\064\060\160" + "\170\054\040\141\154\160\150\141\050\100\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\051\040\065\066\160\170\051\054\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\164\157\160\054\040\141\154\160\150\141\050\100\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\064\051\054" + "\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\061\064\051\040\067\160\170\054\040\141" + "\154\160\150\141\050\100\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\051\040\062\064\160\170\051\073\040\175\012\012\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\164\141\142\072\143\150" + "\145\143\153\145\144\040\173\040\157\165\164\154\151\156\145\072" + "\040\060\040\163\157\154\151\144\040\164\162\141\156\163\160\141" + "\162\145\156\164\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\064\160\170\073\040\164\162\141\156\163" + "\151\164\151\157\156\072\040\157\165\164\154\151\156\145\055\143" + "\157\154\157\162\040\062\060\060\155\163\040\143\165\142\151\143" + "\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056" + "\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051\054" + "\040\157\165\164\154\151\156\145\055\167\151\144\164\150\040\062" + "\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145" + "\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056" + "\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151" + "\156\145\055\157\146\146\163\145\164\040\062\060\060\155\163\040" + "\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062" + "\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060" + "\056\071\064\051\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\040\076\040\150\145\141\144\145\162\040\076" + "\040\164\141\142\163\040\076\040\164\141\142\072\143\150\145\143" + "\153\145\144\040\173\040\157\165\164\154\151\156\145\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145" + "\156\164\137\143\157\154\157\162\054\060\056\065\051\073\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\072\040\062\160" + "\170\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\055\062\160\170\073\040\175\012\012\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\040\173\040" + "\160\141\144\144\151\156\147\072\040\061\160\170\073\040\142\157" + "\162\144\145\162\055\143\157\154\157\162\072\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\065\051\073\040\142\157\162\144\145\162\055\167\151\144" + "\164\150\072\040\061\160\170\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\154\151\160\072\040\160\141\144\144\151\156" + "\147\055\142\157\170\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\040\076\040\164\141" + "\142\163\040\173\040\155\141\162\147\151\156\072\040\055\061\160" + "\170\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\056\164\157\160\040\173\040\142\157" + "\162\144\145\162\055\142\157\164\164\157\155\055\163\164\171\154" + "\145\072\040\163\157\154\151\144\073\040\175\012\012\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056\164" + "\157\160\040\076\040\164\141\142\163\040\173\040\155\141\162\147" + "\151\156\055\142\157\164\164\157\155\072\040\055\062\160\170\073" + "\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\056\164\157\160\040\076\040\164\141\142\163" + "\040\076\040\164\141\142\072\150\157\166\145\162\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\055\064\160\170\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\061\065\051" + "\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\056\164\157\160\040\076\040\164\141\142" + "\163\040\076\040\164\141\142\072\143\150\145\143\153\145\144\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\060\040\055\064\160\170\040\100\141\143\143\145" + "\156\164\137\142\147\137\143\157\154\157\162\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\056\142\157\164\164\157\155\040\173\040\142\157\162\144\145" + "\162\055\164\157\160\055\163\164\171\154\145\072\040\163\157\154" + "\151\144\073\040\175\012\012\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\056\142\157\164\164\157\155\040" + "\076\040\164\141\142\163\040\173\040\155\141\162\147\151\156\055" + "\164\157\160\072\040\055\062\160\170\073\040\175\012\012\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056" + "\142\157\164\164\157\155\040\076\040\164\141\142\163\040\076\040" + "\164\141\142\072\150\157\166\145\162\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060\040" + "\064\160\170\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\065\051\073\040\175\012" + "\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\056\142\157\164\164\157\155\040\076\040\164\141\142\163" + "\040\076\040\164\141\142\072\143\150\145\143\153\145\144\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\060\040\064\160\170\040\100\141\143\143\145\156\164" + "\137\142\147\137\143\157\154\157\162\073\040\175\012\012\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056" + "\154\145\146\164\040\173\040\142\157\162\144\145\162\055\162\151" + "\147\150\164\055\163\164\171\154\145\072\040\163\157\154\151\144" + "\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\056\154\145\146\164\040\076\040\164\141" + "\142\163\040\173\040\155\141\162\147\151\156\055\162\151\147\150" + "\164\072\040\055\062\160\170\073\040\175\012\012\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\056\154\145" + "\146\164\040\076\040\164\141\142\163\040\076\040\164\141\142\072" + "\150\157\166\145\162\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\055\064\160\170\040\060" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\065\051\073\040\175\012\012\156\157" + "\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056" + "\154\145\146\164\040\076\040\164\141\142\163\040\076\040\164\141" + "\142\072\143\150\145\143\153\145\144\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\055\064" + "\160\170\040\060\040\100\141\143\143\145\156\164\137\142\147\137" + "\143\157\154\157\162\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\056\162\151\147\150" + "\164\040\173\040\142\157\162\144\145\162\055\154\145\146\164\055" + "\163\164\171\154\145\072\040\163\157\154\151\144\073\040\175\012" + "\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\056\162\151\147\150\164\040\076\040\164\141\142\163\040" + "\173\040\155\141\162\147\151\156\055\154\145\146\164\072\040\055" + "\062\160\170\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\056\162\151\147\150\164\040" + "\076\040\164\141\142\163\040\076\040\164\141\142\072\150\157\166" + "\145\162\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\064\160\170\040\060\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\065\051\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\056\162\151\147\150" + "\164\040\076\040\164\141\142\163\040\076\040\164\141\142\072\143" + "\150\145\143\153\145\144\040\173\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\151\156\163\145\164\040\064\160\170\040\060" + "\040\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\056\164\157\160\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\040\173\040\142\157\162" + "\144\145\162\055\164\157\160\055\163\164\171\154\145\072\040\156" + "\157\156\145\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\056\142\157\164\164\157\155" + "\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167\040" + "\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055" + "\163\164\171\154\145\072\040\156\157\156\145\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\056\164\157\160\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\054\040\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\056\142\157\164\164\157\155\040\076" + "\040\164\141\142\163\040\076\040\141\162\162\157\167\040\173\040" + "\155\141\162\147\151\156\055\154\145\146\164\072\040\055\065\160" + "\170\073\040\155\141\162\147\151\156\055\162\151\147\150\164\072" + "\040\055\065\160\170\073\040\160\141\144\144\151\156\147\055\154" + "\145\146\164\072\040\064\160\170\073\040\160\141\144\144\151\156" + "\147\055\162\151\147\150\164\072\040\064\160\170\073\040\175\012" + "\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\056\164\157\160\040\076\040\164\141\142\163\040\076\040" + "\141\162\162\157\167\056\144\157\167\156\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\056\142\157" + "\164\164\157\155\040\076\040\164\141\142\163\040\076\040\141\162" + "\162\157\167\056\144\157\167\156\040\173\040\055\147\164\153\055" + "\151\143\157\156\055\163\157\165\162\143\145\072\040\055\147\164" + "\153\055\151\143\157\156\164\150\145\155\145\050\042\160\141\156" + "\055\163\164\141\162\164\055\163\171\155\142\157\154\151\143\042" + "\051\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\056\164\157\160\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\056\165\160\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\056\142\157\164\164\157\155\040\076\040\164\141\142\163\040\076" + "\040\141\162\162\157\167\056\165\160\040\173\040\055\147\164\153" + "\055\151\143\157\156\055\163\157\165\162\143\145\072\040\055\147" + "\164\153\055\151\143\157\156\164\150\145\155\145\050\042\160\141" + "\156\055\145\156\144\055\163\171\155\142\157\154\151\143\042\051" + "\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\056\154\145\146\164\040\076\040\164\141" + "\142\163\040\076\040\141\162\162\157\167\040\173\040\142\157\162" + "\144\145\162\055\154\145\146\164\055\163\164\171\154\145\072\040" + "\156\157\156\145\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\056\162\151\147\150\164" + "\040\076\040\164\141\142\163\040\076\040\141\162\162\157\167\040" + "\173\040\142\157\162\144\145\162\055\162\151\147\150\164\055\163" + "\164\171\154\145\072\040\156\157\156\145\073\040\175\012\012\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\056\154\145\146\164\040\076\040\164\141\142\163\040\076\040\141" + "\162\162\157\167\054\040\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\056\162\151\147\150\164\040\076\040" + "\164\141\142\163\040\076\040\141\162\162\157\167\040\173\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\055\065\160\170\073" + "\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072\040" + "\055\065\160\170\073\040\160\141\144\144\151\156\147\055\164\157" + "\160\072\040\064\160\170\073\040\160\141\144\144\151\156\147\055" + "\142\157\164\164\157\155\072\040\064\160\170\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\056\154\145\146\164\040\076\040\164\141\142\163\040\076\040" + "\141\162\162\157\167\056\144\157\167\156\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\056\162\151" + "\147\150\164\040\076\040\164\141\142\163\040\076\040\141\162\162" + "\157\167\056\144\157\167\156\040\173\040\055\147\164\153\055\151" + "\143\157\156\055\163\157\165\162\143\145\072\040\055\147\164\153" + "\055\151\143\157\156\164\150\145\155\145\050\042\160\141\156\055" + "\165\160\055\163\171\155\142\157\154\151\143\042\051\073\040\175" + "\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141" + "\144\145\162\056\154\145\146\164\040\076\040\164\141\142\163\040" + "\076\040\141\162\162\157\167\056\165\160\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\056\162\151" + "\147\150\164\040\076\040\164\141\142\163\040\076\040\141\162\162" + "\157\167\056\165\160\040\173\040\055\147\164\153\055\151\143\157" + "\156\055\163\157\165\162\143\145\072\040\055\147\164\153\055\151" + "\143\157\156\164\150\145\155\145\050\042\160\141\156\055\144\157" + "\167\156\055\163\171\155\142\157\154\151\143\042\051\073\040\175" + "\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141" + "\144\145\162\040\076\040\164\141\142\163\040\076\040\141\162\162" + "\157\167\040\173\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\061\066\160\170\073\040\155\151\156\055\167\151\144\164\150" + "\072\040\061\066\160\170\073\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\060\073\040\175\012\012\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076" + "\040\164\141\142\163\040\076\040\141\162\162\157\167\072\150\157" + "\166\145\162\072\156\157\164\050\072\141\143\164\151\166\145\051" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\156" + "\157\156\145\073\040\175\012\012\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163" + "\040\076\040\164\141\142\040\173\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\073\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\063\060\160\170\073\040\155\151\156\055\167\151\144\164\150\072" + "\040\063\060\160\170\073\040\160\141\144\144\151\156\147\072\040" + "\063\160\170\040\061\062\160\170\073\040\146\157\156\164\055\167" + "\145\151\147\150\164\072\040\156\157\162\155\141\154\073\040\175" + "\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141" + "\144\145\162\040\076\040\164\141\142\163\040\076\040\164\141\142" + "\072\150\157\166\145\162\054\040\156\157\164\145\142\157\157\153" + "\040\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163" + "\040\076\040\164\141\142\072\141\143\164\151\166\145\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\060\067\051\073\040\175\012\012\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\164\141\142\072\156\157" + "\164\050\072\143\150\145\143\153\145\144\051\040\173\040\157\165" + "\164\154\151\156\145\055\143\157\154\157\162\072\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\175\012\012\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\040\076" + "\040\164\141\142\163\040\076\040\164\141\142\072\144\151\163\141" + "\142\154\145\144\040\173\040\146\151\154\164\145\162\072\040\157" + "\160\141\143\151\164\171\050\060\056\065\051\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\040\076\040\164\141\142\163\040\076\040\164\141\142\072\144" + "\151\163\141\142\154\145\144\040\154\141\142\145\154\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\040\076\040\164\141\142\163\040\076\040\164\141\142\072\144\151" + "\163\141\142\154\145\144\040\142\165\164\164\157\156\040\173\040" + "\146\151\154\164\145\162\072\040\156\157\156\145\073\040\175\012" + "\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\040\076\040\164\141\142\163\040\076\040\164\141\142\040" + "\142\165\164\164\157\156\056\146\154\141\164\040\173\040\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\063\051\073\040\160\141" + "\144\144\151\156\147\072\040\060\073\040\155\141\162\147\151\156" + "\055\164\157\160\072\040\064\160\170\073\040\155\141\162\147\151" + "\156\055\142\157\164\164\157\155\072\040\064\160\170\073\040\155" + "\151\156\055\167\151\144\164\150\072\040\062\060\160\170\073\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\062\060\160\170" + "\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040" + "\164\141\142\040\142\165\164\164\157\156\056\146\154\141\164\072" + "\150\157\166\145\162\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\040\076\040\164\141\142\163\040" + "\076\040\164\141\142\040\142\165\164\164\157\156\056\146\154\141" + "\164\072\141\143\164\151\166\145\040\173\040\143\157\154\157\162" + "\072\040\143\165\162\162\145\156\164\103\157\154\157\162\073\040" + "\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150\145" + "\141\144\145\162\040\076\040\164\141\142\163\040\076\040\164\141" + "\142\040\142\165\164\164\157\156\056\146\154\141\164\072\154\141" + "\163\164\055\143\150\151\154\144\040\173\040\155\141\162\147\151" + "\156\055\154\145\146\164\072\040\064\160\170\073\040\155\141\162" + "\147\151\156\055\162\151\147\150\164\072\040\055\064\160\170\073" + "\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\040\076\040\164\141\142\163\040\076\040\164" + "\141\142\040\142\165\164\164\157\156\056\146\154\141\164\072\146" + "\151\162\163\164\055\143\150\151\154\144\040\173\040\155\141\162" + "\147\151\156\055\154\145\146\164\072\040\055\064\160\170\073\040" + "\155\141\162\147\151\156\055\162\151\147\150\164\072\040\064\160" + "\170\073\040\175\012\012\156\157\164\145\142\157\157\153\040\076" + "\040\150\145\141\144\145\162\056\164\157\160\040\076\040\164\141" + "\142\163\054\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\056\142\157\164\164\157\155\040\076\040\164" + "\141\142\163\040\173\040\160\141\144\144\151\156\147\055\154\145" + "\146\164\072\040\064\160\170\073\040\160\141\144\144\151\156\147" + "\055\162\151\147\150\164\072\040\064\160\170\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\056\164\157\160\040\076\040\164\141\142\163\072\156\157\164" + "\050\072\157\156\154\171\055\143\150\151\154\144\051\054\040\156" + "\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145\162" + "\056\142\157\164\164\157\155\040\076\040\164\141\142\163\072\156" + "\157\164\050\072\157\156\154\171\055\143\150\151\154\144\051\040" + "\173\040\155\141\162\147\151\156\055\154\145\146\164\072\040\063" + "\160\170\073\040\155\141\162\147\151\156\055\162\151\147\150\164" + "\072\040\063\160\170\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\056\164\157\160\040" + "\076\040\164\141\142\163\072\156\157\164\050\072\157\156\154\171" + "\055\143\150\151\154\144\051\072\146\151\162\163\164\055\143\150" + "\151\154\144\054\040\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\056\142\157\164\164\157\155\040\076\040" + "\164\141\142\163\072\156\157\164\050\072\157\156\154\171\055\143" + "\150\151\154\144\051\072\146\151\162\163\164\055\143\150\151\154" + "\144\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072" + "\040\055\061\160\170\073\040\175\012\012\156\157\164\145\142\157" + "\157\153\040\076\040\150\145\141\144\145\162\056\164\157\160\040" + "\076\040\164\141\142\163\072\156\157\164\050\072\157\156\154\171" + "\055\143\150\151\154\144\051\072\154\141\163\164\055\143\150\151" + "\154\144\054\040\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\056\142\157\164\164\157\155\040\076\040\164" + "\141\142\163\072\156\157\164\050\072\157\156\154\171\055\143\150" + "\151\154\144\051\072\154\141\163\164\055\143\150\151\154\144\040" + "\173\040\155\141\162\147\151\156\055\162\151\147\150\164\072\040" + "\055\061\160\170\073\040\175\012\012\156\157\164\145\142\157\157" + "\153\040\076\040\150\145\141\144\145\162\056\164\157\160\040\076" + "\040\164\141\142\163\040\076\040\164\141\142\054\040\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056\142" + "\157\164\164\157\155\040\076\040\164\141\142\163\040\076\040\164" + "\141\142\040\173\040\155\141\162\147\151\156\055\154\145\146\164" + "\072\040\064\160\170\073\040\155\141\162\147\151\156\055\162\151" + "\147\150\164\072\040\064\160\170\073\040\175\012\012\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056\154" + "\145\146\164\040\076\040\164\141\142\163\054\040\156\157\164\145" + "\142\157\157\153\040\076\040\150\145\141\144\145\162\056\162\151" + "\147\150\164\040\076\040\164\141\142\163\040\173\040\160\141\144" + "\144\151\156\147\055\164\157\160\072\040\064\160\170\073\040\160" + "\141\144\144\151\156\147\055\142\157\164\164\157\155\072\040\064" + "\160\170\073\040\175\012\012\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\056\154\145\146\164\040\076\040" + "\164\141\142\163\072\156\157\164\050\072\157\156\154\171\055\143" + "\150\151\154\144\051\054\040\156\157\164\145\142\157\157\153\040" + "\076\040\150\145\141\144\145\162\056\162\151\147\150\164\040\076" + "\040\164\141\142\163\072\156\157\164\050\072\157\156\154\171\055" + "\143\150\151\154\144\051\040\173\040\155\141\162\147\151\156\055" + "\164\157\160\072\040\063\160\170\073\040\155\141\162\147\151\156" + "\055\142\157\164\164\157\155\072\040\063\160\170\073\040\175\012" + "\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\056\154\145\146\164\040\076\040\164\141\142\163\072\156" + "\157\164\050\072\157\156\154\171\055\143\150\151\154\144\051\072" + "\146\151\162\163\164\055\143\150\151\154\144\054\040\156\157\164" + "\145\142\157\157\153\040\076\040\150\145\141\144\145\162\056\162" + "\151\147\150\164\040\076\040\164\141\142\163\072\156\157\164\050" + "\072\157\156\154\171\055\143\150\151\154\144\051\072\146\151\162" + "\163\164\055\143\150\151\154\144\040\173\040\155\141\162\147\151" + "\156\055\164\157\160\072\040\055\061\160\170\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\056\154\145\146\164\040\076\040\164\141\142\163\072\156\157" + "\164\050\072\157\156\154\171\055\143\150\151\154\144\051\072\154" + "\141\163\164\055\143\150\151\154\144\054\040\156\157\164\145\142" + "\157\157\153\040\076\040\150\145\141\144\145\162\056\162\151\147" + "\150\164\040\076\040\164\141\142\163\072\156\157\164\050\072\157" + "\156\154\171\055\143\150\151\154\144\051\072\154\141\163\164\055" + "\143\150\151\154\144\040\173\040\155\141\162\147\151\156\055\142" + "\157\164\164\157\155\072\040\055\061\160\170\073\040\175\012\012" + "\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144\145" + "\162\056\154\145\146\164\040\076\040\164\141\142\163\040\076\040" + "\164\141\142\054\040\156\157\164\145\142\157\157\153\040\076\040" + "\150\145\141\144\145\162\056\162\151\147\150\164\040\076\040\164" + "\141\142\163\040\076\040\164\141\142\040\173\040\155\141\162\147" + "\151\156\055\164\157\160\072\040\064\160\170\073\040\155\141\162" + "\147\151\156\055\142\157\164\164\157\155\072\040\064\160\170\073" + "\040\175\012\012\156\157\164\145\142\157\157\153\040\076\040\150" + "\145\141\144\145\162\056\164\157\160\040\076\040\164\141\142\163" + "\040\076\040\164\141\142\040\173\040\160\141\144\144\151\156\147" + "\055\142\157\164\164\157\155\072\040\064\160\170\073\040\175\012" + "\012\156\157\164\145\142\157\157\153\040\076\040\150\145\141\144" + "\145\162\056\142\157\164\164\157\155\040\076\040\164\141\142\163" + "\040\076\040\164\141\142\040\173\040\160\141\144\144\151\156\147" + "\055\164\157\160\072\040\064\160\170\073\040\175\012\012\156\157" + "\164\145\142\157\157\153\040\076\040\163\164\141\143\153\072\156" + "\157\164\050\072\157\156\154\171\055\143\150\151\154\144\051\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\100\166\151\145\167\137\142\147\137\143\157\154" + "\157\162\073\040\175\012\012\160\141\156\145\144\040\076\040\163" + "\145\160\141\162\141\164\157\162\040\173\040\155\151\156\055\167" + "\151\144\164\150\072\040\061\160\170\073\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\061\160\170\073\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\156\157\156\145\073\040\142\141" + "\143\153\147\162\157\165\156\144\055\163\151\172\145\072\040\061" + "\160\170\040\061\160\170\073\040\175\012\012\160\141\156\145\144" + "\040\076\040\163\145\160\141\162\141\164\157\162\056\167\151\144" + "\145\040\173\040\155\151\156\055\167\151\144\164\150\072\040\065" + "\160\170\073\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\065\160\170\073\040\175\012\012\160\141\156\145\144\056\150\157" + "\162\151\172\157\156\164\141\154\040\076\040\163\145\160\141\162" + "\141\164\157\162\072\144\151\162\050\154\164\162\051\040\173\040" + "\155\141\162\147\151\156\072\040\060\040\055\070\160\170\040\060" + "\040\060\073\040\160\141\144\144\151\156\147\072\040\060\040\070" + "\160\170\040\060\040\060\073\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\061\160\170\040\060\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\061\065\051\073\040\175\012\012\160\141\156" + "\145\144\056\150\157\162\151\172\157\156\164\141\154\040\076\040" + "\163\145\160\141\162\141\164\157\162\072\144\151\162\050\162\164" + "\154\051\040\173\040\155\141\162\147\151\156\072\040\060\040\060" + "\040\060\040\055\070\160\170\073\040\160\141\144\144\151\156\147" + "\072\040\060\040\060\040\060\040\070\160\170\073\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\055" + "\061\160\170\040\060\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\065\051\073\040" + "\175\012\012\160\141\156\145\144\056\150\157\162\151\172\157\156" + "\164\141\154\040\076\040\163\145\160\141\162\141\164\157\162\056" + "\167\151\144\145\040\173\040\155\141\162\147\151\156\072\040\060" + "\073\040\160\141\144\144\151\156\147\072\040\060\073\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\061\160\170\040\060\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\065\051\054\040" + "\151\156\163\145\164\040\055\061\160\170\040\060\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\065\051\073\040\175\012\012\160\141\156\145\144\056" + "\166\145\162\164\151\143\141\154\040\076\040\163\145\160\141\162" + "\141\164\157\162\040\173\040\155\141\162\147\151\156\072\040\060" + "\040\060\040\055\070\160\170\040\060\073\040\160\141\144\144\151" + "\156\147\072\040\060\040\060\040\070\160\170\040\060\073\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\061\160\170\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\061\065\051\073" + "\040\175\012\012\160\141\156\145\144\056\166\145\162\164\151\143" + "\141\154\040\076\040\163\145\160\141\162\141\164\157\162\056\167" + "\151\144\145\040\173\040\155\141\162\147\151\156\072\040\060\073" + "\040\160\141\144\144\151\156\147\072\040\060\073\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\061\160\170\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\065\051\054\040\151" + "\156\163\145\164\040\060\040\055\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\065\051\073\040\175\012\012\164\157\157\154\142\141\162" + "\166\151\145\167\056\165\156\144\145\162\163\150\157\157\164\055" + "\164\157\160\040\160\157\160\157\166\145\162\040\163\143\162\157" + "\154\154\145\144\167\151\156\144\157\167\040\165\156\144\145\162" + "\163\150\157\157\164\056\164\157\160\054\040\164\157\157\154\142" + "\141\162\166\151\145\167\056\165\156\144\145\162\163\150\157\157" + "\164\055\142\157\164\164\157\155\040\160\157\160\157\166\145\162" + "\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167\040" + "\165\156\144\145\162\163\150\157\157\164\056\142\157\164\164\157" + "\155\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\156\157\156\145\073\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\156\157\156\145\073\040\175\012\012\160\157\160\157\166" + "\145\162\056\142\141\143\153\147\162\157\165\156\144\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040\146" + "\157\156\164\072\040\151\156\151\164\151\141\154\073\040\175\012" + "\012\160\157\160\157\166\145\162\040\076\040\141\162\162\157\167" + "\054\040\160\157\160\157\166\145\162\040\076\040\143\157\156\164" + "\145\156\164\163\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\160\157\160\157\166\145" + "\162\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157" + "\162\072\040\100\160\157\160\157\166\145\162\137\146\147\137\143" + "\157\154\157\162\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\154\151\160\072\040\160\141\144\144\151\156\147\055\142" + "\157\170\073\040\142\157\162\144\145\162\072\040\061\160\170\040" + "\163\157\154\151\144\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\061\064\051\073\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\060\040\061\160\170\040\065\160\170" + "\040\061\160\170\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\060\071\051\054\040\060\040\062\160\170\040" + "\061\064\160\170\040\063\160\170\040\162\147\142\141\050\060\054" + "\040\060\054\040\060\054\040\060\056\060\065\051\073\040\175\012" + "\012\160\157\160\157\166\145\162\040\076\040\143\157\156\164\145" + "\156\164\163\040\173\040\160\141\144\144\151\156\147\072\040\070" + "\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\061\062\160\170\073\040\175\012\012\160\157\160\157" + "\166\145\162\040\076\040\143\157\156\164\145\156\164\163\040\076" + "\040\154\151\163\164\054\040\160\157\160\157\166\145\162\040\076" + "\040\143\157\156\164\145\156\164\163\040\076\040\056\166\151\145" + "\167\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\160\157\160\157\166\145\162\040\076\040\143\157\156\164\145\156" + "\164\163\040\076\040\056\144\151\141\154\157\147\055\141\143\164" + "\151\157\156\055\142\157\170\054\040\160\157\160\157\166\145\162" + "\040\076\040\143\157\156\164\145\156\164\163\040\076\040\164\157" + "\157\154\142\141\162\040\173\040\142\157\162\144\145\162\055\163" + "\164\171\154\145\072\040\156\157\156\145\073\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\164\162" + "\141\156\163\160\141\162\145\156\164\073\040\175\012\012\056\157" + "\163\144\040\160\157\160\157\166\145\162\054\040\160\157\160\157" + "\166\145\162\056\164\157\165\143\150\055\163\145\154\145\143\164" + "\151\157\156\054\040\160\157\160\157\166\145\162\056\155\141\147" + "\156\151\146\151\145\162\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\164\162\141\156\163" + "\160\141\162\145\156\164\073\040\175\012\012\056\157\163\144\040" + "\160\157\160\157\166\145\162\040\076\040\141\162\162\157\167\054" + "\040\056\157\163\144\040\160\157\160\157\166\145\162\040\076\040" + "\143\157\156\164\145\156\164\163\054\040\160\157\160\157\166\145" + "\162\056\164\157\165\143\150\055\163\145\154\145\143\164\151\157" + "\156\040\076\040\141\162\162\157\167\054\040\160\157\160\157\166" + "\145\162\056\164\157\165\143\150\055\163\145\154\145\143\164\151" + "\157\156\040\076\040\143\157\156\164\145\156\164\163\054\040\160" + "\157\160\157\166\145\162\056\155\141\147\156\151\146\151\145\162" + "\040\076\040\141\162\162\157\167\054\040\160\157\160\157\166\145" + "\162\056\155\141\147\156\151\146\151\145\162\040\076\040\143\157" + "\156\164\145\156\164\163\040\173\040\142\157\162\144\145\162\072" + "\040\061\160\170\040\163\157\154\151\144\040\162\147\142\141\050" + "\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040\060" + "\056\061\051\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\175\012\012\160\157\160\157\166\145" + "\162\040\164\157\157\154\142\141\162\166\151\145\167\056\165\156" + "\144\145\162\163\150\157\157\164\055\164\157\160\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\164\157\160\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\061\160\170\040\141\154\160\150\141\050\100\160\157" + "\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\065\051\073\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\142\157\164\164\157\155\054\040" + "\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\160\157\160\157\166\145\162\040\164" + "\157\157\154\142\141\162\166\151\145\167\056\165\156\144\145\162" + "\163\150\157\157\164\055\142\157\164\164\157\155\040\163\143\162" + "\157\154\154\145\144\167\151\156\144\157\167\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\142\157\164\164\157\155\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\060\040\055\061\160\170\040\141\154\160\150\141" + "\050\100\160\157\160\157\166\145\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\067\065\051\073\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\164\157\040\164\157\160\054" + "\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065" + "\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064" + "\160\170\051\073\040\175\012\012\160\157\160\157\166\145\162\040" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056\165" + "\156\144\145\162\163\150\157\157\164\055\164\157\160\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\164\157\160\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\060\040\061\160\170\040\141\154\160\150\141\050\100" + "\160\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\065\051\073\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162" + "\141\144\151\145\156\164\050\164\157\040\142\157\164\164\157\155" + "\054\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\065\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040" + "\064\160\170\051\073\040\175\012\012\160\157\160\157\166\145\162" + "\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056" + "\165\156\144\145\162\163\150\157\157\164\055\142\157\164\164\157" + "\155\040\076\040\165\156\144\145\162\163\150\157\157\164\056\142" + "\157\164\164\157\155\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\055\061\160\170" + "\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065" + "\051\073\040\142\141\143\153\147\162\157\165\156\144\072\040\154" + "\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164" + "\157\040\164\157\160\054\040\141\154\160\150\141\050\100\160\157" + "\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\065\051\054\040\164\162\141\156\163\160\141" + "\162\145\156\164\040\064\160\170\051\073\040\175\012\012\160\157" + "\160\157\166\145\162\040\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\056\165\156\144\145\162\163\150\157\157\164\055" + "\163\164\141\162\164\072\144\151\162\050\154\164\162\051\040\076" + "\040\165\156\144\145\162\163\150\157\157\164\056\154\145\146\164" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\061\160\170\040\060\040\141\154\160\150\141" + "\050\100\160\157\160\157\166\145\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\067\065\051\073\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055" + "\147\162\141\144\151\145\156\164\050\164\157\040\162\151\147\150" + "\164\054\040\141\154\160\150\141\050\100\160\157\160\157\166\145" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\067\065\051\054\040\164\162\141\156\163\160\141\162\145\156\164" + "\040\064\160\170\051\073\040\175\012\012\160\157\160\157\166\145" + "\162\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\056\165\156\144\145\162\163\150\157\157\164\055\163\164\141\162" + "\164\072\144\151\162\050\162\164\154\051\040\076\040\165\156\144" + "\145\162\163\150\157\157\164\056\162\151\147\150\164\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\055\061\160\170\040\060\040\141\154\160\150\141\050\100" + "\160\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\065\051\073\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162" + "\141\144\151\145\156\164\050\164\157\040\154\145\146\164\054\040" + "\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\160\157\160\157\166\145\162\040\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\056\165\156" + "\144\145\162\163\150\157\157\164\055\145\156\144\072\144\151\162" + "\050\154\164\162\051\040\076\040\165\156\144\145\162\163\150\157" + "\157\164\056\162\151\147\150\164\040\173\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\151\156\163\145\164\040\055\061\160" + "\170\040\060\040\141\154\160\150\141\050\100\160\157\160\157\166" + "\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\073\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\154\145\146\164\054\040\141\154\160\150\141" + "\050\100\160\157\160\157\166\145\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\067\065\051\054\040\164\162\141" + "\156\163\160\141\162\145\156\164\040\064\160\170\051\073\040\175" + "\012\012\160\157\160\157\166\145\162\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163\150" + "\157\157\164\055\145\156\144\072\144\151\162\050\162\164\154\051" + "\040\076\040\165\156\144\145\162\163\150\157\157\164\056\154\145" + "\146\164\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\061\160\170\040\060\040\141\154\160" + "\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\067\065\051\073\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162\151" + "\147\150\164\054\040\141\154\160\150\141\050\100\160\157\160\157" + "\166\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\040\064\160\170\051\073\040\175\012\012\160\157\160\157" + "\166\145\162\040\146\154\141\160\040\076\040\144\151\155\155\151" + "\156\147\054\040\160\157\160\157\166\145\162\040\154\145\141\146" + "\154\145\164\040\076\040\144\151\155\155\151\156\147\054\040\160" + "\157\160\157\166\145\162\040\156\141\166\151\147\141\164\151\157" + "\156\055\166\151\145\167\040\076\040\144\151\155\155\151\156\147" + "\054\040\160\157\160\157\166\145\162\040\157\166\145\162\154\141" + "\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040\144" + "\151\155\155\151\156\147\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\100\160\157\160\157\166\145\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\073\040\175\012\012\160\157" + "\160\157\166\145\162\040\146\154\141\160\040\076\040\163\150\141" + "\144\157\167\054\040\160\157\160\157\166\145\162\040\154\145\141" + "\146\154\145\164\040\076\040\163\150\141\144\157\167\054\040\160" + "\157\160\157\166\145\162\040\156\141\166\151\147\141\164\151\157" + "\156\055\166\151\145\167\040\076\040\163\150\141\144\157\167\054" + "\040\160\157\160\157\166\145\162\040\157\166\145\162\154\141\171" + "\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163\150" + "\141\144\157\167\040\173\040\155\151\156\055\167\151\144\164\150" + "\072\040\065\066\160\170\073\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\065\066\160\170\073\040\175\012\012\160\157\160" + "\157\166\145\162\040\146\154\141\160\040\076\040\163\150\141\144" + "\157\167\056\154\145\146\164\054\040\160\157\160\157\166\145\162" + "\040\154\145\141\146\154\145\164\040\076\040\163\150\141\144\157" + "\167\056\154\145\146\164\054\040\160\157\160\157\166\145\162\040" + "\156\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040" + "\076\040\163\150\141\144\157\167\056\154\145\146\164\054\040\160" + "\157\160\157\166\145\162\040\157\166\145\162\154\141\171\055\163" + "\160\154\151\164\055\166\151\145\167\040\076\040\163\150\141\144" + "\157\167\056\154\145\146\164\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162" + "\151\147\150\164\054\040\141\154\160\150\141\050\100\160\157\160" + "\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\067\051\054\040\141\154\160\150\141\050\100\160\157" + "\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\061\064\051\040\064\060\160\170\054\040\141\154" + "\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\051\040\065\066\160\170" + "\051\054\040\154\151\156\145\141\162\055\147\162\141\144\151\145" + "\156\164\050\164\157\040\162\151\147\150\164\054\040\141\154\160" + "\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\064\051\054\040\141\154" + "\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040\067" + "\160\170\054\040\141\154\160\150\141\050\100\160\157\160\157\166" + "\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\051\040\062\064\160\170\051\073\040\175\012\012\160\157\160\157" + "\166\145\162\040\146\154\141\160\040\076\040\163\150\141\144\157" + "\167\056\162\151\147\150\164\054\040\160\157\160\157\166\145\162" + "\040\154\145\141\146\154\145\164\040\076\040\163\150\141\144\157" + "\167\056\162\151\147\150\164\054\040\160\157\160\157\166\145\162" + "\040\156\141\166\151\147\141\164\151\157\156\055\166\151\145\167" + "\040\076\040\163\150\141\144\157\167\056\162\151\147\150\164\054" + "\040\160\157\160\157\166\145\162\040\157\166\145\162\154\141\171" + "\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163\150" + "\141\144\157\167\056\162\151\147\150\164\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040\154" + "\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164" + "\157\040\154\145\146\164\054\040\141\154\160\150\141\050\100\160" + "\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\067\051\054\040\141\154\160\150\141\050\100" + "\160\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\061\064\051\040\064\060\160\170\054\040" + "\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\051\040\065\066" + "\160\170\051\054\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\154\145\146\164\054\040\141\154" + "\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\064\051\054\040\141" + "\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040" + "\067\160\170\054\040\141\154\160\150\141\050\100\160\157\160\157" + "\166\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\051\040\062\064\160\170\051\073\040\175\012\012\160\157\160" + "\157\166\145\162\040\146\154\141\160\040\076\040\163\150\141\144" + "\157\167\056\165\160\054\040\160\157\160\157\166\145\162\040\154" + "\145\141\146\154\145\164\040\076\040\163\150\141\144\157\167\056" + "\165\160\054\040\160\157\160\157\166\145\162\040\156\141\166\151" + "\147\141\164\151\157\156\055\166\151\145\167\040\076\040\163\150" + "\141\144\157\167\056\165\160\054\040\160\157\160\157\166\145\162" + "\040\157\166\145\162\154\141\171\055\163\160\154\151\164\055\166" + "\151\145\167\040\076\040\163\150\141\144\157\167\056\165\160\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\164\157\040\142\157\164\164\157\155\054\040\141" + "\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\067\051\054\040" + "\141\154\160\150\141\050\100\160\157\160\157\166\145\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\061\064\051" + "\040\064\060\160\170\054\040\141\154\160\150\141\050\100\160\157" + "\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\051\040\065\066\160\170\051\054\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\142" + "\157\164\164\157\155\054\040\141\154\160\150\141\050\100\160\157" + "\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\064\051\054\040\141\154\160\150\141\050\100\160" + "\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\061\064\051\040\067\160\170\054\040\141\154" + "\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\051\040\062\064\160\170" + "\051\073\040\175\012\012\160\157\160\157\166\145\162\040\146\154" + "\141\160\040\076\040\163\150\141\144\157\167\056\144\157\167\156" + "\054\040\160\157\160\157\166\145\162\040\154\145\141\146\154\145" + "\164\040\076\040\163\150\141\144\157\167\056\144\157\167\156\054" + "\040\160\157\160\157\166\145\162\040\156\141\166\151\147\141\164" + "\151\157\156\055\166\151\145\167\040\076\040\163\150\141\144\157" + "\167\056\144\157\167\156\054\040\160\157\160\157\166\145\162\040" + "\157\166\145\162\154\141\171\055\163\160\154\151\164\055\166\151" + "\145\167\040\076\040\163\150\141\144\157\167\056\144\157\167\156" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\164\157\160\054\040\141\154\160" + "\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\067\051\054\040\141\154" + "\160\150\141\050\100\160\157\160\157\166\145\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040\064" + "\060\160\170\054\040\141\154\160\150\141\050\100\160\157\160\157" + "\166\145\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\051\040\065\066\160\170\051\054\040\154\151\156\145\141\162" + "\055\147\162\141\144\151\145\156\164\050\164\157\040\164\157\160" + "\054\040\141\154\160\150\141\050\100\160\157\160\157\166\145\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\064" + "\051\054\040\141\154\160\150\141\050\100\160\157\160\157\166\145" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\061\064\051\040\067\160\170\054\040\141\154\160\150\141\050\100" + "\160\157\160\157\166\145\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\051\040\062\064\160\170\051\073\040\175\012" + "\012\160\162\145\146\145\162\145\156\143\145\163\160\141\147\145" + "\040\076\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\040\076\040\166\151\145\167\160\157\162\164\040\076\040\143" + "\154\141\155\160\040\076\040\142\157\170\040\173\040\155\141\162" + "\147\151\156\072\040\062\064\160\170\040\061\062\160\170\073\040" + "\142\157\162\144\145\162\055\163\160\141\143\151\156\147\072\040" + "\062\064\160\170\073\040\175\012\012\160\162\145\146\145\162\145" + "\156\143\145\163\147\162\157\165\160\040\076\040\142\157\170\054" + "\040\160\162\145\146\145\162\145\156\143\145\163\147\162\157\165" + "\160\040\076\040\142\157\170\040\056\154\141\142\145\154\163\040" + "\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156\147" + "\072\040\066\160\170\073\040\175\012\012\160\162\145\146\145\162" + "\145\156\143\145\163\147\162\157\165\160\040\076\040\142\157\170" + "\040\076\040\142\157\170\056\150\145\141\144\145\162\072\156\157" + "\164\050\056\163\151\156\147\154\145\055\154\151\156\145\051\040" + "\173\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072" + "\040\066\160\170\073\040\175\012\012\160\162\145\146\145\162\145" + "\156\143\145\163\147\162\157\165\160\040\076\040\142\157\170\040" + "\076\040\142\157\170\056\163\151\156\147\154\145\055\154\151\156" + "\145\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\063\064\160\170\073\040\175\012\012\160\162\157\147\162\145\163" + "\163\142\141\162\056\150\157\162\151\172\157\156\164\141\154\040" + "\076\040\164\162\157\165\147\150\040\173\040\155\151\156\055\167" + "\151\144\164\150\072\040\061\065\060\160\170\073\040\175\012\012" + "\160\162\157\147\162\145\163\163\142\141\162\056\150\157\162\151" + "\172\157\156\164\141\154\040\076\040\164\162\157\165\147\150\054" + "\040\160\162\157\147\162\145\163\163\142\141\162\056\150\157\162" + "\151\172\157\156\164\141\154\040\076\040\164\162\157\165\147\150" + "\040\076\040\160\162\157\147\162\145\163\163\040\173\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\070\160\170\073\040\175" + "\012\012\160\162\157\147\162\145\163\163\142\141\162\056\166\145" + "\162\164\151\143\141\154\040\076\040\164\162\157\165\147\150\040" + "\173\040\155\151\156\055\150\145\151\147\150\164\072\040\070\060" + "\160\170\073\040\175\012\012\160\162\157\147\162\145\163\163\142" + "\141\162\056\166\145\162\164\151\143\141\154\040\076\040\164\162" + "\157\165\147\150\054\040\160\162\157\147\162\145\163\163\142\141" + "\162\056\166\145\162\164\151\143\141\154\040\076\040\164\162\157" + "\165\147\150\040\076\040\160\162\157\147\162\145\163\163\040\173" + "\040\155\151\156\055\167\151\144\164\150\072\040\070\160\170\073" + "\040\175\012\012\160\162\157\147\162\145\163\163\142\141\162\040" + "\076\040\164\145\170\164\040\173\040\146\157\156\164\055\163\151" + "\172\145\072\040\163\155\141\154\154\145\162\073\040\175\012\012" + "\160\162\157\147\162\145\163\163\142\141\162\072\144\151\163\141" + "\142\154\145\144\040\173\040\146\151\154\164\145\162\072\040\157" + "\160\141\143\151\164\171\050\060\056\065\051\073\040\175\012\012" + "\160\162\157\147\162\145\163\163\142\141\162\040\076\040\164\162" + "\157\165\147\150\040\076\040\160\162\157\147\162\145\163\163\040" + "\173\040\057\052\040\163\150\141\162\145\040\155\157\163\164\040" + "\157\146\040\163\143\141\154\145\163\047\040\052\057\040\142\157" + "\162\144\145\162\055\162\141\144\151\165\163\072\040\071\071\160" + "\170\073\040\175\012\012\160\162\157\147\162\145\163\163\142\141" + "\162\040\076\040\164\162\157\165\147\150\040\076\040\160\162\157" + "\147\162\145\163\163\056\154\145\146\164\040\173\040\142\157\162" + "\144\145\162\055\164\157\160\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\071\071\160\170\073\040\142\157\162\144\145" + "\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162\141" + "\144\151\165\163\072\040\071\071\160\170\073\040\175\012\012\160" + "\162\157\147\162\145\163\163\142\141\162\040\076\040\164\162\157" + "\165\147\150\040\076\040\160\162\157\147\162\145\163\163\056\162" + "\151\147\150\164\040\173\040\142\157\162\144\145\162\055\164\157" + "\160\055\162\151\147\150\164\055\162\141\144\151\165\163\072\040" + "\071\071\160\170\073\040\142\157\162\144\145\162\055\142\157\164" + "\164\157\155\055\162\151\147\150\164\055\162\141\144\151\165\163" + "\072\040\071\071\160\170\073\040\175\012\012\160\162\157\147\162" + "\145\163\163\142\141\162\040\076\040\164\162\157\165\147\150\040" + "\076\040\160\162\157\147\162\145\163\163\056\164\157\160\040\173" + "\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147\150" + "\164\055\162\141\144\151\165\163\072\040\071\071\160\170\073\040" + "\142\157\162\144\145\162\055\164\157\160\055\154\145\146\164\055" + "\162\141\144\151\165\163\072\040\071\071\160\170\073\040\175\012" + "\012\160\162\157\147\162\145\163\163\142\141\162\040\076\040\164" + "\162\157\165\147\150\040\076\040\160\162\157\147\162\145\163\163" + "\056\142\157\164\164\157\155\040\173\040\142\157\162\144\145\162" + "\055\142\157\164\164\157\155\055\162\151\147\150\164\055\162\141" + "\144\151\165\163\072\040\071\071\160\170\073\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\071\071\160\170\073\040\175\012\012" + "\160\162\157\147\162\145\163\163\142\141\162\056\157\163\144\040" + "\173\040\155\151\156\055\167\151\144\164\150\072\040\062\160\170" + "\073\040\155\151\156\055\150\145\151\147\150\164\072\040\062\160" + "\170\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\164\162\141\156\163\160\141\162\145\156\164" + "\073\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164" + "\073\040\175\012\012\160\162\157\147\162\145\163\163\142\141\162" + "\056\157\163\144\040\076\040\164\162\157\165\147\150\040\173\040" + "\142\157\162\144\145\162\055\163\164\171\154\145\072\040\156\157" + "\156\145\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\060\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\175\012\012\160\162\157\147\162\145" + "\163\163\142\141\162\056\157\163\144\040\076\040\164\162\157\165" + "\147\150\040\076\040\160\162\157\147\162\145\163\163\040\173\040" + "\142\157\162\144\145\162\055\163\164\171\154\145\072\040\156\157" + "\156\145\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\060\073\040\175\012\012\160\162\157\147\162\145\163" + "\163\142\141\162\056\157\163\144\056\150\157\162\151\172\157\156" + "\164\141\154\040\076\040\164\162\157\165\147\150\054\040\160\162" + "\157\147\162\145\163\163\142\141\162\056\157\163\144\056\150\157" + "\162\151\172\157\156\164\141\154\040\076\040\164\162\157\165\147" + "\150\040\076\040\160\162\157\147\162\145\163\163\040\173\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\062\160\170\073\040" + "\175\012\012\160\162\157\147\162\145\163\163\142\141\162\056\157" + "\163\144\056\166\145\162\164\151\143\141\154\040\076\040\164\162" + "\157\165\147\150\054\040\160\162\157\147\162\145\163\163\142\141" + "\162\056\157\163\144\056\166\145\162\164\151\143\141\154\040\076" + "\040\164\162\157\165\147\150\040\076\040\160\162\157\147\162\145" + "\163\163\040\173\040\155\151\156\055\167\151\144\164\150\072\040" + "\062\160\170\073\040\175\012\012\160\162\157\147\162\145\163\163" + "\142\141\162\040\076\040\164\162\157\165\147\150\056\145\155\160" + "\164\171\040\076\040\160\162\157\147\162\145\163\163\040\173\040" + "\141\154\154\072\040\165\156\163\145\164\073\040\175\012\012\056" + "\157\163\144\040\160\162\157\147\162\145\163\163\142\141\162\040" + "\076\040\164\162\157\165\147\150\040\076\040\160\162\157\147\162" + "\145\163\163\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\162\147\142\141\050\062\065\065" + "\054\040\062\065\065\054\040\062\065\065\054\040\060\056\067\065" + "\051\073\040\175\012\012\163\143\141\154\145\040\076\040\164\162" + "\157\165\147\150\040\076\040\146\151\154\154\054\040\163\143\141" + "\154\145\040\076\040\164\162\157\165\147\150\054\040\160\162\157" + "\147\162\145\163\163\142\141\162\040\076\040\164\162\157\165\147" + "\150\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\071\071\160\170\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\061\065\051\073\040\175\012\012\163\143\141\154\145\040\076\040" + "\164\162\157\165\147\150\040\076\040\150\151\147\150\154\151\147" + "\150\164\054\040\160\162\157\147\162\145\163\163\142\141\162\040" + "\076\040\164\162\157\165\147\150\040\076\040\160\162\157\147\162" + "\145\163\163\040\173\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\071\071\160\170\073\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\100\141\143" + "\143\145\156\164\137\142\147\137\143\157\154\157\162\073\040\143" + "\157\154\157\162\072\040\100\141\143\143\145\156\164\137\146\147" + "\137\143\157\154\157\162\073\040\175\012\012\163\143\141\154\145" + "\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040\061" + "\060\160\170\073\040\155\151\156\055\167\151\144\164\150\072\040" + "\061\060\160\170\073\040\160\141\144\144\151\156\147\072\040\061" + "\062\160\170\073\040\175\012\012\163\143\141\154\145\040\076\040" + "\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162\040" + "\173\040\157\165\164\154\151\156\145\072\040\060\040\163\157\154" + "\151\144\040\164\162\141\156\163\160\141\162\145\156\164\073\040" + "\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040" + "\066\160\170\073\040\164\162\141\156\163\151\164\151\157\156\072" + "\040\157\165\164\154\151\156\145\055\143\157\154\157\162\040\062" + "\060\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145" + "\162\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056" + "\064\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151" + "\156\145\055\167\151\144\164\150\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\157\165\164\154\151\156\145\055\157\146\146" + "\163\145\164\040\062\060\060\155\163\040\143\165\142\151\143\055" + "\142\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064" + "\066\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040" + "\175\012\012\163\143\141\154\145\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\040\076\040\164" + "\162\157\165\147\150\040\076\040\163\154\151\144\145\162\040\173" + "\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157" + "\154\157\162\054\060\056\065\051\073\040\157\165\164\154\151\156" + "\145\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165" + "\164\154\151\156\145\055\157\146\146\163\145\164\072\040\060\073" + "\040\175\012\012\163\143\141\154\145\040\076\040\164\162\157\165" + "\147\150\040\076\040\163\154\151\144\145\162\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\155\151\170\050\167\150\151\164\145\054\100\166\151\145\167\137" + "\142\147\137\143\157\154\157\162\054\060\056\062\051\073\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\060\040\060\040\060" + "\040\061\160\170\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\061\051\054\040\060\040\062\160\170\040\064" + "\160\170\040\162\147\142\141\050\060\054\040\060\054\040\060\054" + "\040\060\056\062\051\073\040\142\157\162\144\145\162\055\162\141" + "\144\151\165\163\072\040\061\060\060\045\073\040\155\151\156\055" + "\167\151\144\164\150\072\040\062\060\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\062\060\160\170\073\040\155" + "\141\162\147\151\156\072\040\055\070\160\170\073\040\175\012\012" + "\163\143\141\154\145\072\150\157\166\145\162\040\076\040\164\162" + "\157\165\147\150\054\040\163\143\141\154\145\072\141\143\164\151" + "\166\145\040\076\040\164\162\157\165\147\150\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\062\051\073\040\175\012\012\163\143\141\154" + "\145\072\150\157\166\145\162\040\076\040\164\162\157\165\147\150" + "\040\076\040\150\151\147\150\154\151\147\150\164\054\040\163\143" + "\141\154\145\072\141\143\164\151\166\145\040\076\040\164\162\157" + "\165\147\150\040\076\040\150\151\147\150\154\151\147\150\164\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\151\155\141\147\145\050\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061" + "\051\051\073\040\175\012\012\163\143\141\154\145\072\150\157\166" + "\145\162\040\076\040\164\162\157\165\147\150\040\076\040\163\154" + "\151\144\145\162\054\040\163\143\141\154\145\072\141\143\164\151" + "\166\145\040\076\040\164\162\157\165\147\150\040\076\040\163\154" + "\151\144\145\162\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\167\150\151\164\145\073\040" + "\175\012\012\056\157\163\144\040\163\143\141\154\145\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\040\076\040\164\162\157\165\147\150\040\173\040\157\165\164" + "\154\151\156\145\055\143\157\154\157\162\072\040\162\147\142\141" + "\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054\040" + "\060\056\065\051\073\040\175\012\012\056\157\163\144\040\163\143" + "\141\154\145\040\076\040\164\162\157\165\147\150\040\076\040\150" + "\151\147\150\154\151\147\150\164\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\162\147\142" + "\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065\054" + "\040\060\056\067\065\051\073\040\143\157\154\157\162\072\040\162" + "\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056\067" + "\065\051\073\040\175\012\012\163\143\141\154\145\072\144\151\163" + "\141\142\154\145\144\040\173\040\146\151\154\164\145\162\072\040" + "\157\160\141\143\151\164\171\050\060\056\065\051\073\040\175\012" + "\012\163\143\141\154\145\072\144\151\163\141\142\154\145\144\040" + "\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145" + "\162\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\060\040\060\040\060\040\061\160\170\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\061\051\054\040\060\040" + "\062\160\170\040\064\160\170\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\072\040\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\062\051\073\040\175\012\012\163\143\141\154\145" + "\056\146\151\156\145\055\164\165\156\145\040\173\040\160\141\144" + "\144\151\156\147\072\040\071\160\170\073\040\175\012\012\163\143" + "\141\154\145\056\146\151\156\145\055\164\165\156\145\056\150\157" + "\162\151\172\157\156\164\141\154\040\173\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\061\066\160\170\073\040\175\012\012" + "\163\143\141\154\145\056\146\151\156\145\055\164\165\156\145\056" + "\166\145\162\164\151\143\141\154\040\173\040\155\151\156\055\167" + "\151\144\164\150\072\040\061\066\160\170\073\040\175\012\012\163" + "\143\141\154\145\056\146\151\156\145\055\164\165\156\145\040\076" + "\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145\162" + "\040\173\040\155\141\162\147\151\156\072\040\055\065\160\170\073" + "\040\175\012\012\163\143\141\154\145\056\155\141\162\153\163\055" + "\142\145\146\157\162\145\072\156\157\164\050\056\155\141\162\153" + "\163\055\141\146\164\145\162\051\040\076\040\164\162\157\165\147" + "\150\040\076\040\163\154\151\144\145\162\054\040\163\143\141\154" + "\145\056\155\141\162\153\163\055\141\146\164\145\162\072\156\157" + "\164\050\056\155\141\162\153\163\055\142\145\146\157\162\145\051" + "\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144" + "\145\162\040\173\040\164\162\141\156\163\146\157\162\155\072\040" + "\162\157\164\141\164\145\050\064\065\144\145\147\051\073\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\060\040\060\040\060" + "\040\061\160\170\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\061\051\054\040\061\160\170\040\061\160\170" + "\040\064\160\170\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\062\051\073\040\175\012\012\163\143\141\154" + "\145\056\155\141\162\153\163\055\142\145\146\157\162\145\072\156" + "\157\164\050\056\155\141\162\153\163\055\141\146\164\145\162\051" + "\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144" + "\145\162\072\144\151\163\141\142\154\145\144\054\040\163\143\141" + "\154\145\056\155\141\162\153\163\055\141\146\164\145\162\072\156" + "\157\164\050\056\155\141\162\153\163\055\142\145\146\157\162\145" + "\051\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151" + "\144\145\162\072\144\151\163\141\142\154\145\144\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\060\040\060\040\060" + "\040\061\160\170\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\061\051\054\040\061\160\170\040\061\160\170" + "\040\064\160\170\040\164\162\141\156\163\160\141\162\145\156\164" + "\073\040\175\012\012\163\143\141\154\145\056\150\157\162\151\172" + "\157\156\164\141\154\040\076\040\155\141\162\153\163\040\173\040" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\065\065\051\073" + "\040\175\012\012\163\143\141\154\145\056\150\157\162\151\172\157" + "\156\164\141\154\040\076\040\155\141\162\153\163\056\164\157\160" + "\040\173\040\155\141\162\147\151\156\055\142\157\164\164\157\155" + "\072\040\066\160\170\073\040\175\012\012\163\143\141\154\145\056" + "\150\157\162\151\172\157\156\164\141\154\040\076\040\155\141\162" + "\153\163\056\142\157\164\164\157\155\040\173\040\155\141\162\147" + "\151\156\055\164\157\160\072\040\066\160\170\073\040\175\012\012" + "\163\143\141\154\145\056\150\157\162\151\172\157\156\164\141\154" + "\040\076\040\155\141\162\153\163\040\151\156\144\151\143\141\164" + "\157\162\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103\157" + "\154\157\162\073\040\155\151\156\055\150\145\151\147\150\164\072" + "\040\066\160\170\073\040\155\151\156\055\167\151\144\164\150\072" + "\040\061\160\170\073\040\175\012\012\163\143\141\154\145\056\150" + "\157\162\151\172\157\156\164\141\154\040\076\040\166\141\154\165" + "\145\056\154\145\146\164\040\173\040\155\141\162\147\151\156\055" + "\162\151\147\150\164\072\040\071\160\170\073\040\175\012\012\163" + "\143\141\154\145\056\150\157\162\151\172\157\156\164\141\154\040" + "\076\040\166\141\154\165\145\056\162\151\147\150\164\040\173\040" + "\155\141\162\147\151\156\055\154\145\146\164\072\040\071\160\170" + "\073\040\175\012\012\163\143\141\154\145\056\150\157\162\151\172" + "\157\156\164\141\154\056\146\151\156\145\055\164\165\156\145\040" + "\076\040\155\141\162\153\163\056\164\157\160\040\173\040\155\141" + "\162\147\151\156\055\164\157\160\072\040\063\160\170\073\040\175" + "\012\012\163\143\141\154\145\056\150\157\162\151\172\157\156\164" + "\141\154\056\146\151\156\145\055\164\165\156\145\040\076\040\155" + "\141\162\153\163\056\142\157\164\164\157\155\040\173\040\155\141" + "\162\147\151\156\055\142\157\164\164\157\155\072\040\063\160\170" + "\073\040\175\012\012\163\143\141\154\145\056\150\157\162\151\172" + "\157\156\164\141\154\056\146\151\156\145\055\164\165\156\145\040" + "\076\040\155\141\162\153\163\040\151\156\144\151\143\141\164\157" + "\162\040\173\040\155\151\156\055\150\145\151\147\150\164\072\040" + "\063\160\170\073\040\175\012\012\163\143\141\154\145\056\150\157" + "\162\151\172\157\156\164\141\154\056\155\141\162\153\163\055\142" + "\145\146\157\162\145\040\173\040\160\141\144\144\151\156\147\055" + "\164\157\160\072\040\060\073\040\175\012\012\163\143\141\154\145" + "\056\150\157\162\151\172\157\156\164\141\154\056\155\141\162\153" + "\163\055\142\145\146\157\162\145\040\076\040\164\162\157\165\147" + "\150\040\076\040\163\154\151\144\145\162\040\173\040\142\157\162" + "\144\145\162\055\164\157\160\055\154\145\146\164\055\162\141\144" + "\151\165\163\072\040\060\073\040\175\012\012\163\143\141\154\145" + "\056\150\157\162\151\172\157\156\164\141\154\056\155\141\162\153" + "\163\055\141\146\164\145\162\040\173\040\160\141\144\144\151\156" + "\147\055\142\157\164\164\157\155\072\040\060\073\040\175\012\012" + "\163\143\141\154\145\056\150\157\162\151\172\157\156\164\141\154" + "\056\155\141\162\153\163\055\141\146\164\145\162\040\076\040\164" + "\162\157\165\147\150\040\076\040\163\154\151\144\145\162\040\173" + "\040\142\157\162\144\145\162\055\142\157\164\164\157\155\055\162" + "\151\147\150\164\055\162\141\144\151\165\163\072\040\060\073\040" + "\175\012\012\163\143\141\154\145\056\150\157\162\151\172\157\156" + "\164\141\154\056\155\141\162\153\163\055\142\145\146\157\162\145" + "\056\155\141\162\153\163\055\141\146\164\145\162\040\076\040\164" + "\162\157\165\147\150\040\076\040\163\154\151\144\145\162\040\173" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\061\060\060\045\073\040\175\012\012\163\143\141\154\145\056\166" + "\145\162\164\151\143\141\154\040\076\040\155\141\162\153\163\040" + "\173\040\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\065\065" + "\051\073\040\175\012\012\163\143\141\154\145\056\166\145\162\164" + "\151\143\141\154\040\076\040\155\141\162\153\163\056\164\157\160" + "\040\173\040\155\141\162\147\151\156\055\162\151\147\150\164\072" + "\040\066\160\170\073\040\175\012\012\163\143\141\154\145\056\166" + "\145\162\164\151\143\141\154\040\076\040\155\141\162\153\163\056" + "\142\157\164\164\157\155\040\173\040\155\141\162\147\151\156\055" + "\154\145\146\164\072\040\066\160\170\073\040\175\012\012\163\143" + "\141\154\145\056\166\145\162\164\151\143\141\154\040\076\040\155" + "\141\162\153\163\040\151\156\144\151\143\141\164\157\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\143\165\162\162\145\156\164\103\157\154\157\162\073" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\061\160\170" + "\073\040\155\151\156\055\167\151\144\164\150\072\040\066\160\170" + "\073\040\175\012\012\163\143\141\154\145\056\166\145\162\164\151" + "\143\141\154\040\076\040\166\141\154\165\145\056\164\157\160\040" + "\173\040\155\141\162\147\151\156\055\142\157\164\164\157\155\072" + "\040\071\160\170\073\040\175\012\012\163\143\141\154\145\056\166" + "\145\162\164\151\143\141\154\040\076\040\166\141\154\165\145\056" + "\142\157\164\164\157\155\040\173\040\155\141\162\147\151\156\055" + "\164\157\160\072\040\071\160\170\073\040\175\012\012\163\143\141" + "\154\145\056\166\145\162\164\151\143\141\154\056\146\151\156\145" + "\055\164\165\156\145\040\076\040\155\141\162\153\163\056\164\157" + "\160\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072" + "\040\063\160\170\073\040\175\012\012\163\143\141\154\145\056\166" + "\145\162\164\151\143\141\154\056\146\151\156\145\055\164\165\156" + "\145\040\076\040\155\141\162\153\163\056\142\157\164\164\157\155" + "\040\173\040\155\141\162\147\151\156\055\162\151\147\150\164\072" + "\040\063\160\170\073\040\175\012\012\163\143\141\154\145\056\166" + "\145\162\164\151\143\141\154\056\146\151\156\145\055\164\165\156" + "\145\040\076\040\155\141\162\153\163\040\151\156\144\151\143\141" + "\164\157\162\040\173\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\063\160\170\073\040\175\012\012\163\143\141\154\145\056" + "\166\145\162\164\151\143\141\154\056\155\141\162\153\163\055\142" + "\145\146\157\162\145\040\173\040\160\141\144\144\151\156\147\055" + "\154\145\146\164\072\040\060\073\040\175\012\012\163\143\141\154" + "\145\056\166\145\162\164\151\143\141\154\056\155\141\162\153\163" + "\055\142\145\146\157\162\145\040\076\040\164\162\157\165\147\150" + "\040\076\040\163\154\151\144\145\162\040\173\040\142\157\162\144" + "\145\162\055\142\157\164\164\157\155\055\154\145\146\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\175\012\012\163\143\141" + "\154\145\056\166\145\162\164\151\143\141\154\056\155\141\162\153" + "\163\055\141\146\164\145\162\040\173\040\160\141\144\144\151\156" + "\147\055\162\151\147\150\164\072\040\060\073\040\175\012\012\163" + "\143\141\154\145\056\166\145\162\164\151\143\141\154\056\155\141" + "\162\153\163\055\141\146\164\145\162\040\076\040\164\162\157\165" + "\147\150\040\076\040\163\154\151\144\145\162\040\173\040\142\157" + "\162\144\145\162\055\164\157\160\055\162\151\147\150\164\055\162" + "\141\144\151\165\163\072\040\060\073\040\175\012\012\163\143\141" + "\154\145\056\143\157\154\157\162\040\173\040\160\141\144\144\151" + "\156\147\072\040\060\073\040\175\012\012\163\143\141\154\145\056" + "\143\157\154\157\162\040\076\040\164\162\157\165\147\150\040\173" + "\040\142\157\162\144\145\162\072\040\156\157\156\145\073\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145\073" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\061\060\160\170\073\040\175\012\012\163\143\141\154\145\056\143" + "\157\154\157\162\040\076\040\164\162\157\165\147\150\040\076\040" + "\163\154\151\144\145\162\040\173\040\155\141\162\147\151\156\072" + "\040\060\073\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\162\147\142\141\050\062\065\065\054\040" + "\062\065\065\054\040\062\065\065\054\040\060\056\070\051\073\040" + "\175\012\012\163\143\141\154\145\056\143\157\154\157\162\056\146" + "\151\156\145\055\164\165\156\145\040\173\040\160\141\144\144\151" + "\156\147\072\040\062\160\170\073\040\175\012\012\163\143\141\154" + "\145\056\143\157\154\157\162\056\146\151\156\145\055\164\165\156" + "\145\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151" + "\144\145\162\040\173\040\155\141\162\147\151\156\072\040\055\062" + "\160\170\073\040\175\012\012\163\143\162\157\154\154\142\141\162" + "\040\076\040\162\141\156\147\145\040\076\040\164\162\157\165\147" + "\150\040\173\040\155\141\162\147\151\156\072\040\067\160\170\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\141\154\154" + "\040\062\060\060\155\163\040\154\151\156\145\141\162\073\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\061\060" + "\160\170\073\040\175\012\012\163\143\162\157\154\154\142\141\162" + "\040\076\040\162\141\156\147\145\040\076\040\164\162\157\165\147" + "\150\040\076\040\163\154\151\144\145\162\040\173\040\155\151\156" + "\055\167\151\144\164\150\072\040\070\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\070\160\170\073\040\155\141" + "\162\147\151\156\072\040\055\066\160\170\073\040\142\157\162\144" + "\145\162\072\040\066\160\170\040\163\157\154\151\144\040\164\162" + "\141\156\163\160\141\162\145\156\164\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\061\060\160\170\073\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\154\151\160\072" + "\040\160\141\144\144\151\156\147\055\142\157\170\073\040\164\162" + "\141\156\163\151\164\151\157\156\072\040\141\154\154\040\062\060" + "\060\155\163\040\154\151\156\145\141\162\073\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\062\051\073\040\175\012\012\163\143\162\157\154\154" + "\142\141\162\040\076\040\162\141\156\147\145\040\076\040\164\162" + "\157\165\147\150\040\076\040\163\154\151\144\145\162\072\150\157" + "\166\145\162\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\064\051\073" + "\040\175\012\012\163\143\162\157\154\154\142\141\162\040\076\040" + "\162\141\156\147\145\040\076\040\164\162\157\165\147\150\040\076" + "\040\163\154\151\144\145\162\072\141\143\164\151\166\145\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\066\051\073\040\175\012\012\163" + "\143\162\157\154\154\142\141\162\040\076\040\162\141\156\147\145" + "\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144" + "\145\162\072\144\151\163\141\142\154\145\144\040\173\040\157\160" + "\141\143\151\164\171\072\040\060\073\040\175\012\012\163\143\162" + "\157\154\154\142\141\162\056\150\157\162\151\172\157\156\164\141" + "\154\040\076\040\162\141\156\147\145\040\076\040\164\162\157\165" + "\147\150\040\173\040\155\141\162\147\151\156\055\164\157\160\072" + "\040\066\160\170\073\040\155\141\162\147\151\156\055\142\157\164" + "\164\157\155\072\040\066\160\170\073\040\175\012\012\163\143\162" + "\157\154\154\142\141\162\056\166\145\162\164\151\143\141\154\040" + "\076\040\162\141\156\147\145\040\076\040\164\162\157\165\147\150" + "\040\173\040\155\141\162\147\151\156\055\154\145\146\164\072\040" + "\066\160\170\073\040\155\141\162\147\151\156\055\162\151\147\150" + "\164\072\040\066\160\170\073\040\175\012\012\163\143\162\157\154" + "\154\142\141\162\056\157\166\145\162\154\141\171\055\151\156\144" + "\151\143\141\164\157\162\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\156\157\156\145\073\040\143\157\154\157\162" + "\072\040\151\156\150\145\162\151\164\073\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\156\157\156\145\073\040\160\141\144" + "\144\151\156\147\072\040\060\073\040\175\012\012\163\143\162\157" + "\154\154\142\141\162\056\157\166\145\162\154\141\171\055\151\156" + "\144\151\143\141\164\157\162\040\076\040\162\141\156\147\145\040" + "\076\040\164\162\157\165\147\150\040\173\040\157\165\164\154\151" + "\156\145\072\040\061\160\170\040\163\157\154\151\144\040\164\162" + "\141\156\163\160\141\162\145\156\164\073\040\175\012\012\163\143" + "\162\157\154\154\142\141\162\056\157\166\145\162\154\141\171\055" + "\151\156\144\151\143\141\164\157\162\040\076\040\162\141\156\147" + "\145\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151" + "\144\145\162\040\173\040\157\165\164\154\151\156\145\072\040\061" + "\160\170\040\163\157\154\151\144\040\141\154\160\150\141\050\100" + "\163\143\162\157\154\154\142\141\162\137\157\165\164\154\151\156" + "\145\137\143\157\154\157\162\054\060\056\066\051\073\040\157\165" + "\164\154\151\156\145\055\157\146\146\163\145\164\072\040\055\066" + "\160\170\073\040\175\012\012\056\157\163\144\040\163\143\162\157" + "\154\154\142\141\162\056\157\166\145\162\154\141\171\055\151\156" + "\144\151\143\141\164\157\162\040\076\040\162\141\156\147\145\040" + "\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145" + "\162\040\173\040\157\165\164\154\151\156\145\072\040\061\160\170" + "\040\163\157\154\151\144\040\141\154\160\150\141\050\162\147\142" + "\141\050\060\054\040\060\054\040\060\054\040\060\056\065\051\054" + "\060\056\066\051\073\040\175\012\012\163\143\162\157\154\154\142" + "\141\162\056\157\166\145\162\154\141\171\055\151\156\144\151\143" + "\141\164\157\162\072\156\157\164\050\056\150\157\166\145\162\151" + "\156\147\051\040\076\040\162\141\156\147\145\040\076\040\164\162" + "\157\165\147\150\040\076\040\163\154\151\144\145\162\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\063\160\170\073\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\063\160\170\073" + "\040\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\100\163\143\162\157\154\154\142\141\162" + "\137\157\165\164\154\151\156\145\137\143\157\154\157\162\054\060" + "\056\063\065\051\073\040\175\012\012\056\157\163\144\040\163\143" + "\162\157\154\154\142\141\162\056\157\166\145\162\154\141\171\055" + "\151\156\144\151\143\141\164\157\162\072\156\157\164\050\056\150" + "\157\166\145\162\151\156\147\051\040\076\040\162\141\156\147\145" + "\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144" + "\145\162\040\173\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\065\051\054\060\056\063" + "\065\051\073\040\175\012\012\163\143\162\157\154\154\142\141\162" + "\056\157\166\145\162\154\141\171\055\151\156\144\151\143\141\164" + "\157\162\056\150\157\166\145\162\151\156\147\040\076\040\162\141" + "\156\147\145\040\076\040\164\162\157\165\147\150\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\051\073\040\175\012\012\163\143\162" + "\157\154\154\142\141\162\056\157\166\145\162\154\141\171\055\151" + "\156\144\151\143\141\164\157\162\056\150\157\162\151\172\157\156" + "\164\141\154\040\076\040\162\141\156\147\145\040\076\040\164\162" + "\157\165\147\150\040\076\040\163\154\151\144\145\162\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\064\060\160\170\073" + "\040\175\012\012\163\143\162\157\154\154\142\141\162\056\157\166" + "\145\162\154\141\171\055\151\156\144\151\143\141\164\157\162\056" + "\150\157\162\151\172\157\156\164\141\154\056\150\157\166\145\162" + "\151\156\147\040\076\040\162\141\156\147\145\040\076\040\164\162" + "\157\165\147\150\040\076\040\163\154\151\144\145\162\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\070\160\170\073" + "\040\175\012\012\163\143\162\157\154\154\142\141\162\056\157\166" + "\145\162\154\141\171\055\151\156\144\151\143\141\164\157\162\056" + "\150\157\162\151\172\157\156\164\141\154\072\156\157\164\050\056" + "\150\157\166\145\162\151\156\147\051\040\076\040\162\141\156\147" + "\145\040\076\040\164\162\157\165\147\150\040\173\040\155\141\162" + "\147\151\156\055\164\157\160\072\040\063\160\170\073\040\155\141" + "\162\147\151\156\055\142\157\164\164\157\155\072\040\063\160\170" + "\073\040\175\012\012\163\143\162\157\154\154\142\141\162\056\157" + "\166\145\162\154\141\171\055\151\156\144\151\143\141\164\157\162" + "\056\166\145\162\164\151\143\141\154\040\076\040\162\141\156\147" + "\145\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151" + "\144\145\162\040\173\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\064\060\160\170\073\040\175\012\012\163\143\162\157\154" + "\154\142\141\162\056\157\166\145\162\154\141\171\055\151\156\144" + "\151\143\141\164\157\162\056\166\145\162\164\151\143\141\154\056" + "\150\157\166\145\162\151\156\147\040\076\040\162\141\156\147\145" + "\040\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144" + "\145\162\040\173\040\155\151\156\055\167\151\144\164\150\072\040" + "\070\160\170\073\040\175\012\012\163\143\162\157\154\154\142\141" + "\162\056\157\166\145\162\154\141\171\055\151\156\144\151\143\141" + "\164\157\162\056\166\145\162\164\151\143\141\154\072\156\157\164" + "\050\056\150\157\166\145\162\151\156\147\051\040\076\040\162\141" + "\156\147\145\040\076\040\164\162\157\165\147\150\040\173\040\155" + "\141\162\147\151\156\055\154\145\146\164\072\040\063\160\170\073" + "\040\155\141\162\147\151\156\055\162\151\147\150\164\072\040\063" + "\160\170\073\040\175\012\012\163\143\162\157\154\154\142\141\162" + "\056\150\157\162\151\172\157\156\164\141\154\040\076\040\162\141" + "\156\147\145\040\076\040\164\162\157\165\147\150\040\076\040\163" + "\154\151\144\145\162\040\173\040\155\151\156\055\167\151\144\164" + "\150\072\040\064\060\160\170\073\040\175\012\012\163\143\162\157" + "\154\154\142\141\162\056\166\145\162\164\151\143\141\154\040\076" + "\040\162\141\156\147\145\040\076\040\164\162\157\165\147\150\040" + "\076\040\163\154\151\144\145\162\040\173\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\064\060\160\170\073\040\175\012\012" + "\163\143\162\157\154\154\142\141\162\040\076\040\162\141\156\147" + "\145\056\146\151\156\145\055\164\165\156\145\040\076\040\164\162" + "\157\165\147\150\040\076\040\163\154\151\144\145\162\054\040\163" + "\143\162\157\154\154\142\141\162\040\076\040\162\141\156\147\145" + "\056\146\151\156\145\055\164\165\156\145\040\076\040\164\162\157" + "\165\147\150\040\076\040\163\154\151\144\145\162\072\150\157\166" + "\145\162\054\040\163\143\162\157\154\154\142\141\162\040\076\040" + "\162\141\156\147\145\056\146\151\156\145\055\164\165\156\145\040" + "\076\040\164\162\157\165\147\150\040\076\040\163\154\151\144\145" + "\162\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\100\141\143\143\145\156\164\137\143\157\154\157\162" + "\054\060\056\066\051\073\040\175\012\012\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\040\076\040\157\166\145\162\163" + "\150\157\157\164\056\164\157\160\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\162\141\144" + "\151\141\154\055\147\162\141\144\151\145\156\164\050\146\141\162" + "\164\150\145\163\164\055\163\151\144\145\040\141\164\040\164\157" + "\160\054\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\061\062\051\040\070\065\045\054" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\051\051\054\040\162\141\144\151\141\154\055" + "\147\162\141\144\151\145\156\164\050\146\141\162\164\150\145\163" + "\164\055\163\151\144\145\040\141\164\040\164\157\160\054\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\060\065\051\054\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\051\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\163\151\172\145" + "\072\040\061\060\060\045\040\063\045\054\040\061\060\060\045\040" + "\065\060\045\073\040\142\141\143\153\147\162\157\165\156\144\055" + "\162\145\160\145\141\164\072\040\156\157\055\162\145\160\145\141" + "\164\073\040\142\141\143\153\147\162\157\165\156\144\055\160\157" + "\163\151\164\151\157\156\072\040\164\157\160\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\164" + "\162\141\156\163\160\141\162\145\156\164\073\040\142\157\162\144" + "\145\162\072\040\156\157\156\145\073\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\156\157\156\145\073\040\175\012\012\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\040\076\040" + "\157\166\145\162\163\150\157\157\164\056\142\157\164\164\157\155" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\162\141\144\151\141\154\055\147\162\141\144" + "\151\145\156\164\050\146\141\162\164\150\145\163\164\055\163\151" + "\144\145\040\141\164\040\142\157\164\164\157\155\054\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\062\051\040\070\065\045\054\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\051\051\054\040\162\141\144\151\141\154\055\147\162\141\144\151" + "\145\156\164\050\146\141\162\164\150\145\163\164\055\163\151\144" + "\145\040\141\164\040\142\157\164\164\157\155\054\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\060\065\051\054\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\051\051\073\040\142" + "\141\143\153\147\162\157\165\156\144\055\163\151\172\145\072\040" + "\061\060\060\045\040\063\045\054\040\061\060\060\045\040\065\060" + "\045\073\040\142\141\143\153\147\162\157\165\156\144\055\162\145" + "\160\145\141\164\072\040\156\157\055\162\145\160\145\141\164\073" + "\040\142\141\143\153\147\162\157\165\156\144\055\160\157\163\151" + "\164\151\157\156\072\040\142\157\164\164\157\155\073\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\142\157\162" + "\144\145\162\072\040\156\157\156\145\073\040\142\157\170\055\163" + "\150\141\144\157\167\072\040\156\157\156\145\073\040\175\012\012" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\040\076" + "\040\157\166\145\162\163\150\157\157\164\056\154\145\146\164\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141" + "\147\145\072\040\162\141\144\151\141\154\055\147\162\141\144\151" + "\145\156\164\050\146\141\162\164\150\145\163\164\055\163\151\144" + "\145\040\141\164\040\154\145\146\164\054\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\061\062\051\040\070\065\045\054\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\051\051\054" + "\040\162\141\144\151\141\154\055\147\162\141\144\151\145\156\164" + "\050\146\141\162\164\150\145\163\164\055\163\151\144\145\040\141" + "\164\040\154\145\146\164\054\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\060\065\051" + "\054\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\051\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\055\163\151\172\145\072\040\063\045\040\061\060" + "\060\045\054\040\065\060\045\040\061\060\060\045\073\040\142\141" + "\143\153\147\162\157\165\156\144\055\162\145\160\145\141\164\072" + "\040\156\157\055\162\145\160\145\141\164\073\040\142\141\143\153" + "\147\162\157\165\156\144\055\160\157\163\151\164\151\157\156\072" + "\040\154\145\146\164\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141" + "\162\145\156\164\073\040\142\157\162\144\145\162\072\040\156\157" + "\156\145\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\156\157\156\145\073\040\175\012\012\163\143\162\157\154\154\145" + "\144\167\151\156\144\157\167\040\076\040\157\166\145\162\163\150" + "\157\157\164\056\162\151\147\150\164\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\162\141" + "\144\151\141\154\055\147\162\141\144\151\145\156\164\050\146\141" + "\162\164\150\145\163\164\055\163\151\144\145\040\141\164\040\162" + "\151\147\150\164\054\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\062\051\040\070" + "\065\045\054\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\051\051\054\040\162\141\144\151" + "\141\154\055\147\162\141\144\151\145\156\164\050\146\141\162\164" + "\150\145\163\164\055\163\151\144\145\040\141\164\040\162\151\147" + "\150\164\054\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\060\065\051\054\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\051\051\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\163\151\172\145\072\040\063\045\040\061\060\060\045\054\040" + "\065\060\045\040\061\060\060\045\073\040\142\141\143\153\147\162" + "\157\165\156\144\055\162\145\160\145\141\164\072\040\156\157\055" + "\162\145\160\145\141\164\073\040\142\141\143\153\147\162\157\165" + "\156\144\055\160\157\163\151\164\151\157\156\072\040\162\151\147" + "\150\164\073\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\164\162\141\156\163\160\141\162\145\156" + "\164\073\040\142\157\162\144\145\162\072\040\156\157\156\145\073" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\156\157\156" + "\145\073\040\175\012\012\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\056\165\156\144\145\162\163\150\157\157\164\055" + "\164\157\160\040\076\040\165\156\144\145\162\163\150\157\157\164" + "\056\164\157\160\040\173\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\060\040\061\160\170\040\141" + "\154\160\150\141\050\100\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\065\051\073\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\142\157\164\164\157\155\054\040" + "\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\067\065\051\054\040\164\162\141\156\163\160" + "\141\162\145\156\164\040\064\160\170\051\073\040\175\012\012\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\056\165\156" + "\144\145\162\163\150\157\157\164\055\142\157\164\164\157\155\040" + "\076\040\165\156\144\145\162\163\150\157\157\164\056\142\157\164" + "\164\157\155\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\151\156\163\145\164\040\060\040\055\061\160\170\040\141" + "\154\160\150\141\050\100\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\065\051\073\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\164\157\160\054\040\141\154\160" + "\150\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\040\064\160\170\051\073\040\175\012\012\163\143\162\157" + "\154\154\145\144\167\151\156\144\157\167\056\165\156\144\145\162" + "\163\150\157\157\164\055\163\164\141\162\164\072\144\151\162\050" + "\154\164\162\051\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\154\145\146\164\040\173\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\151\156\163\145\164\040\061\160\170\040\060" + "\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\065\051\073\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162" + "\141\144\151\145\156\164\050\164\157\040\162\151\147\150\164\054" + "\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\065\051\054\040\164\162\141\156\163" + "\160\141\162\145\156\164\040\064\160\170\051\073\040\175\012\012" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056\165" + "\156\144\145\162\163\150\157\157\164\055\163\164\141\162\164\072" + "\144\151\162\050\162\164\154\051\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\162\151\147\150\164\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\055\061\160\170\040\060\040\141\154\160\150\141\050\100\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156" + "\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040" + "\154\145\146\164\054\040\141\154\160\150\141\050\100\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040" + "\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051" + "\073\040\175\012\012\163\143\162\157\154\154\145\144\167\151\156" + "\144\157\167\056\165\156\144\145\162\163\150\157\157\164\055\145" + "\156\144\072\144\151\162\050\154\164\162\051\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\162\151\147\150\164\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\055\061\160\170\040\060\040\141\154\160\150\141\050" + "\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\154\145\146\164\054\040\141\154\160\150\141\050\100" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065" + "\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064" + "\160\170\051\073\040\175\012\012\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\056\165\156\144\145\162\163\150\157\157" + "\164\055\145\156\144\072\144\151\162\050\162\164\154\051\040\076" + "\040\165\156\144\145\162\163\150\157\157\164\056\154\145\146\164" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\061\160\170\040\060\040\141\154\160\150\141" + "\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\067\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\162\151\147\150\164\054\040\141\154\160\150\141" + "\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\067\065\051\054\040\164\162\141\156\163\160\141\162\145\156\164" + "\040\064\160\170\051\073\040\175\012\012\163\150\157\162\164\143" + "\165\164\163\055\163\145\143\164\151\157\156\040\173\040\155\141" + "\162\147\151\156\072\040\062\060\160\170\073\040\175\012\012\056" + "\163\150\157\162\164\143\165\164\163\055\163\145\141\162\143\150" + "\055\162\145\163\165\154\164\163\040\173\040\155\141\162\147\151" + "\156\072\040\062\060\160\170\073\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\062\064\160\170\073\040\175" + "\012\012\163\150\157\162\164\143\165\164\040\173\040\142\157\162" + "\144\145\162\055\163\160\141\143\151\156\147\072\040\066\160\170" + "\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072" + "\040\066\160\170\073\040\175\012\012\163\150\157\162\164\143\165" + "\164\040\173\040\157\165\164\154\151\156\145\072\040\060\040\163" + "\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156\164" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\070\160\170\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157\162" + "\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145\172" + "\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054\040" + "\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155\163" + "\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060\056" + "\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054\040" + "\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142\151" + "\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040\060" + "\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064\051" + "\073\040\175\012\012\163\150\157\162\164\143\165\164\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156\164" + "\137\143\157\154\157\162\054\060\056\065\051\073\040\157\165\164" + "\154\151\156\145\055\167\151\144\164\150\072\040\062\160\170\073" + "\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164\072" + "\040\064\160\170\073\040\175\012\012\163\150\157\162\164\143\165" + "\164\040\076\040\056\153\145\171\143\141\160\040\173\040\155\151" + "\156\055\167\151\144\164\150\072\040\062\060\160\170\073\040\155" + "\151\156\055\150\145\151\147\150\164\072\040\062\065\160\170\073" + "\040\160\141\144\144\151\156\147\072\040\062\160\170\040\066\160" + "\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\066\160\170\073\040\146\157\156\164\055\163\151\172\145" + "\072\040\163\155\141\154\154\145\162\073\040\175\012\012\163\150" + "\157\162\164\143\165\164\163\055\163\145\143\164\151\157\156\040" + "\163\164\141\143\153\163\167\151\164\143\150\145\162\056\143\151" + "\162\143\165\154\141\162\040\173\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\061\062\160\170\073\040\175" + "\012\012\163\150\157\162\164\143\165\164\163\055\163\145\143\164" + "\151\157\156\040\163\164\141\143\153\163\167\151\164\143\150\145" + "\162\056\143\151\162\143\165\154\141\162\040\076\040\142\165\164" + "\164\157\156\056\143\151\162\143\165\154\141\162\054\040\163\150" + "\157\162\164\143\165\164\163\055\163\145\143\164\151\157\156\040" + "\163\164\141\143\153\163\167\151\164\143\150\145\162\056\143\151" + "\162\143\165\154\141\162\040\076\040\142\165\164\164\157\156\056" + "\164\145\170\164\055\142\165\164\164\157\156\056\143\151\162\143" + "\165\154\141\162\040\173\040\155\151\156\055\167\151\144\164\150" + "\072\040\063\062\160\170\073\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\063\062\160\170\073\040\160\141\144\144\151\156" + "\147\072\040\060\073\040\175\012\012\167\151\156\144\157\167\056" + "\163\150\157\162\164\143\165\164\163\040\150\145\141\144\145\162" + "\142\141\162\056\164\151\164\154\145\142\141\162\040\076\040\167" + "\151\156\144\157\167\150\141\156\144\154\145\040\173\040\160\141" + "\144\144\151\156\147\055\164\157\160\072\040\063\160\170\073\040" + "\175\012\012\167\151\156\144\157\167\056\163\150\157\162\164\143" + "\165\164\163\040\163\145\141\162\143\150\142\141\162\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\156\157\156\145" + "\073\040\175\012\012\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\100\163\151\144\145\142\141\162\137" + "\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162\072" + "\040\100\163\151\144\145\142\141\162\137\146\147\137\143\157\154" + "\157\162\073\040\175\012\012\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\072\142\141\143\153\144\162\157\160\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\100\163\151\144\145\142\141\162\137\142\141\143\153\144" + "\162\157\160\137\143\157\154\157\162\073\040\164\162\141\156\163" + "\151\164\151\157\156\072\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\040\062\060\060\155\163\040\145\141" + "\163\145\055\157\165\164\073\040\175\012\012\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\040\164\157\157\154\142\141\162" + "\166\151\145\167\056\165\156\144\145\162\163\150\157\157\164\055" + "\164\157\160\040\163\143\162\157\154\154\145\144\167\151\156\144" + "\157\167\040\076\040\165\156\144\145\162\163\150\157\157\164\056" + "\164\157\160\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\151\156\163\145\164\040\060\040\061\160\170\040\141\154" + "\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\142" + "\157\164\164\157\155\054\040\141\154\160\150\141\050\100\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\065\051\054\040\164\162\141\156\163\160\141" + "\162\145\156\164\040\064\160\170\051\073\040\175\012\012\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\164\157\157\154" + "\142\141\162\166\151\145\167\056\165\156\144\145\162\163\150\157" + "\157\164\055\142\157\164\164\157\155\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\142\157\164\164\157\155\040\173\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164" + "\040\060\040\055\061\160\170\040\141\154\160\150\141\050\100\163" + "\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\067\065\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\164\157\160\054\040\141\154" + "\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040" + "\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051" + "\073\040\175\012\012\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\056\165\156\144\145\162\163\150\157\157\164\055\164\157\160" + "\040\076\040\165\156\144\145\162\163\150\157\157\164\056\164\157" + "\160\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\100\163\151\144\145\142\141\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\056\067\065\051\073\040\142\141" + "\143\153\147\162\157\165\156\144\072\040\154\151\156\145\141\162" + "\055\147\162\141\144\151\145\156\164\050\164\157\040\142\157\164" + "\164\157\155\054\040\141\154\160\150\141\050\100\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\040\064\160\170\051\073\040\175\012\012\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163\150" + "\157\157\164\055\142\157\164\164\157\155\040\076\040\165\156\144" + "\145\162\163\150\157\157\164\056\142\157\164\164\157\155\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\060\040\055\061\160\170\040\141\154\160\150\141\050" + "\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\067\065\051\073\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147" + "\162\141\144\151\145\156\164\050\164\157\040\164\157\160\054\040" + "\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\163\143\162\157\154\154\145\144\167\151\156" + "\144\157\167\056\165\156\144\145\162\163\150\157\157\164\055\163" + "\164\141\162\164\072\144\151\162\050\154\164\162\051\040\076\040" + "\165\156\144\145\162\163\150\157\157\164\056\154\145\146\164\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156" + "\163\145\164\040\061\160\170\040\060\040\141\154\160\150\141\050" + "\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\067\065\051\073\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\154\151\156\145\141\162\055\147" + "\162\141\144\151\145\156\164\050\164\157\040\162\151\147\150\164" + "\054\040\141\154\160\150\141\050\100\163\151\144\145\142\141\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\065\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040" + "\064\160\170\051\073\040\175\012\012\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\056\165\156\144\145\162\163\150\157\157\164" + "\055\163\164\141\162\164\072\144\151\162\050\162\164\154\051\040" + "\076\040\165\156\144\145\162\163\150\157\157\164\056\162\151\147" + "\150\164\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\055\061\160\170\040\060\040\141\154" + "\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\154" + "\145\146\164\054\040\141\154\160\150\141\050\100\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\040\064\160\170\051\073\040\175\012\012\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163\150" + "\157\157\164\055\145\156\144\072\144\151\162\050\154\164\162\051" + "\040\076\040\165\156\144\145\162\163\150\157\157\164\056\162\151" + "\147\150\164\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\151\156\163\145\164\040\055\061\160\170\040\060\040\141" + "\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156" + "\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040" + "\154\145\146\164\054\040\141\154\160\150\141\050\100\163\151\144" + "\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162" + "\145\156\164\040\064\160\170\051\073\040\175\012\012\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\163\143\162\157\154" + "\154\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163" + "\150\157\157\164\055\145\156\144\072\144\151\162\050\162\164\154" + "\051\040\076\040\165\156\144\145\162\163\150\157\157\164\056\154" + "\145\146\164\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\151\156\163\145\164\040\061\160\170\040\060\040\141\154" + "\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162" + "\151\147\150\164\054\040\141\154\160\150\141\050\100\163\151\144" + "\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162" + "\145\156\164\040\064\160\170\051\073\040\175\012\012\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\146\154\141\160\040" + "\076\040\144\151\155\155\151\156\147\054\040\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\040\154\145\141\146\154\145\164" + "\040\076\040\144\151\155\155\151\156\147\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\156\141\166\151\147\141" + "\164\151\157\156\055\166\151\145\167\040\076\040\144\151\155\155" + "\151\156\147\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\157\166\145\162\154\141\171\055\163\160\154\151\164" + "\055\166\151\145\167\040\076\040\144\151\155\155\151\156\147\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\072\040\100\163" + "\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\073\040\175\012\012\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\146\154\141\160\040\076\040\163\150\141\144" + "\157\167\054\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\154\145\141\146\154\145\164\040\076\040\163\150\141\144" + "\157\167\054\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\156\141\166\151\147\141\164\151\157\156\055\166\151\145" + "\167\040\076\040\163\150\141\144\157\167\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\157\166\145\162\154\141" + "\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163" + "\150\141\144\157\167\040\173\040\155\151\156\055\167\151\144\164" + "\150\072\040\065\066\160\170\073\040\155\151\156\055\150\145\151" + "\147\150\164\072\040\065\066\160\170\073\040\175\012\012\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\146\154\141\160" + "\040\076\040\163\150\141\144\157\167\056\154\145\146\164\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\154\145" + "\141\146\154\145\164\040\076\040\163\150\141\144\157\167\056\154" + "\145\146\164\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\156\141\166\151\147\141\164\151\157\156\055\166\151" + "\145\167\040\076\040\163\150\141\144\157\167\056\154\145\146\164" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\157\166\145\162\154\141\171\055\163\160\154\151\164\055\166\151" + "\145\167\040\076\040\163\150\141\144\157\167\056\154\145\146\164" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\162\151\147\150\164\054\040\141" + "\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\067\051\054\040" + "\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\061\064\051" + "\040\064\060\160\170\054\040\141\154\160\150\141\050\100\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\051\040\065\066\160\170\051\054\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162" + "\151\147\150\164\054\040\141\154\160\150\141\050\100\163\151\144" + "\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\064\051\054\040\141\154\160\150\141\050\100\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\061\064\051\040\067\160\170\054\040\141\154\160" + "\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\051\040\062\064\160\170\051" + "\073\040\175\012\012\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\146\154\141\160\040\076\040\163\150\141\144\157\167" + "\056\162\151\147\150\164\054\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\154\145\141\146\154\145\164\040\076\040" + "\163\150\141\144\157\167\056\162\151\147\150\164\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\156\141\166\151" + "\147\141\164\151\157\156\055\166\151\145\167\040\076\040\163\150" + "\141\144\157\167\056\162\151\147\150\164\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\157\166\145\162\154\141" + "\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163" + "\150\141\144\157\167\056\162\151\147\150\164\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\154\145\146\164\054\040\141\154\160\150\141\050\100" + "\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\051\054\040\141\154\160\150\141\050" + "\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\061\064\051\040\064\060\160\170\054" + "\040\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\051\040\065" + "\066\160\170\051\054\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\154\145\146\164\054\040\141" + "\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\064\051\054\040" + "\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\061\064\051" + "\040\067\160\170\054\040\141\154\160\150\141\050\100\163\151\144" + "\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\051\040\062\064\160\170\051\073\040\175\012\012\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\146\154\141\160" + "\040\076\040\163\150\141\144\157\167\056\165\160\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\154\145\141\146" + "\154\145\164\040\076\040\163\150\141\144\157\167\056\165\160\054" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\156" + "\141\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\056\165\160\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\157\166\145\162\154\141" + "\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163" + "\150\141\144\157\167\056\165\160\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\151\155\141\147\145\072\040\154\151\156" + "\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040" + "\142\157\164\164\157\155\054\040\141\154\160\150\141\050\100\163" + "\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\067\051\054\040\141\154\160\150\141\050\100" + "\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\061\064\051\040\064\060\160\170\054\040" + "\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\051\040\065\066" + "\160\170\051\054\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\142\157\164\164\157\155\054\040" + "\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\064\051\054" + "\040\141\154\160\150\141\050\100\163\151\144\145\142\141\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\056\061\064" + "\051\040\067\160\170\054\040\141\154\160\150\141\050\100\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\051\040\062\064\160\170\051\073\040\175\012\012\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\146\154\141" + "\160\040\076\040\163\150\141\144\157\167\056\144\157\167\156\054" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\154" + "\145\141\146\154\145\164\040\076\040\163\150\141\144\157\167\056" + "\144\157\167\156\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\156\141\166\151\147\141\164\151\157\156\055\166" + "\151\145\167\040\076\040\163\150\141\144\157\167\056\144\157\167" + "\156\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\157\166\145\162\154\141\171\055\163\160\154\151\164\055\166" + "\151\145\167\040\076\040\163\150\141\144\157\167\056\144\157\167" + "\156\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151" + "\155\141\147\145\072\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\164\157\160\054\040\141\154" + "\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\051\054\040\141" + "\154\160\150\141\050\100\163\151\144\145\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040" + "\064\060\160\170\054\040\141\154\160\150\141\050\100\163\151\144" + "\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\051\040\065\066\160\170\051\054\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\164\157" + "\160\054\040\141\154\160\150\141\050\100\163\151\144\145\142\141" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\064\051\054\040\141\154\160\150\141\050\100\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\061\064\051\040\067\160\170\054\040\141\154\160\150\141\050" + "\100\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\051\040\062\064\160\170\051\073\040\175" + "\012\012\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\142\141\156\156\145\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\167\151\144\147\145\164\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\155" + "\151\170\050\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\054\100\163\151\144\145\142\141\162\137\142\147\137" + "\143\157\154\157\162\054\060\056\067\051\073\040\143\157\154\157" + "\162\072\040\100\163\151\144\145\142\141\162\137\146\147\137\143" + "\157\154\157\162\073\040\175\012\012\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\142\141\156\156\145\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147\145" + "\164\072\142\141\143\153\144\162\157\160\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\155" + "\151\170\050\100\141\143\143\145\156\164\137\142\147\137\143\157" + "\154\157\162\054\100\163\151\144\145\142\141\162\137\142\141\143" + "\153\144\162\157\160\137\143\157\154\157\162\054\060\056\070\065" + "\051\073\040\175\012\012\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\072\144\151\162\050\154\164\162\051\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\072\144\151\162\050" + "\154\164\162\051\040\142\141\156\156\145\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\167\151\144\147\145\164\054" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\056\145" + "\156\144\072\144\151\162\050\162\164\154\051\054\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\056\145\156\144\072\144" + "\151\162\050\162\164\154\051\040\142\141\156\156\145\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147" + "\145\164\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\055\061\160\170\040\060\040\100\163" + "\151\144\145\142\141\162\137\142\157\162\144\145\162\137\143\157" + "\154\157\162\073\040\175\012\012\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\072\144\151\162\050\162\164\154\051\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\072\144\151" + "\162\050\162\164\154\051\040\142\141\156\156\145\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147\145" + "\164\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\056\145\156\144\072\144\151\162\050\154\164\162\051\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\056\145\156\144" + "\072\144\151\162\050\154\164\162\051\040\142\141\156\156\145\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\167\151" + "\144\147\145\164\040\173\040\142\157\170\055\163\150\141\144\157" + "\167\072\040\151\156\163\145\164\040\061\160\170\040\060\040\100" + "\163\151\144\145\142\141\162\137\142\157\162\144\145\162\137\143" + "\157\154\157\162\073\040\175\012\012\057\052\040\115\151\144\144" + "\154\145\040\160\141\156\145\040\151\156\040\164\150\162\145\145" + "\055\160\141\156\145\040\163\145\164\165\160\163\040\052\057\012" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\054\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\100\163\145" + "\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137" + "\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162\072" + "\040\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\146\147\137\143\157\154\157\162\073\040\175\012" + "\012\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\072\142\141\143" + "\153\144\162\157\160\054\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141" + "\156\145\072\142\141\143\153\144\162\157\160\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142" + "\141\162\137\142\141\143\153\144\162\157\160\137\143\157\154\157" + "\162\073\040\164\162\141\156\163\151\164\151\157\156\072\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\040" + "\062\060\060\155\163\040\145\141\163\145\055\157\165\164\073\040" + "\175\012\012\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\164" + "\157\157\154\142\141\162\166\151\145\167\056\165\156\144\145\162" + "\163\150\157\157\164\055\164\157\160\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\164\157\160\054\040\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\040\056\143\157\156\164\145\156" + "\164\055\160\141\156\145\040\164\157\157\154\142\141\162\166\151" + "\145\167\056\165\156\144\145\162\163\150\157\157\164\055\164\157" + "\160\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167" + "\040\076\040\165\156\144\145\162\163\150\157\157\164\056\164\157" + "\160\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144" + "\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\067\065\051\073\040\142\141\143\153\147\162\157\165" + "\156\144\072\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\164\157\040\142\157\164\164\157\155\054\040\141" + "\154\160\150\141\050\100\163\145\143\157\156\144\141\162\171\137" + "\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\065\051\054\040\164\162\141\156\163" + "\160\141\162\145\156\164\040\064\160\170\051\073\040\175\012\012" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\164\157\157\154" + "\142\141\162\166\151\145\167\056\165\156\144\145\162\163\150\157" + "\157\164\055\142\157\164\164\157\155\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\142\157\164\164\157\155\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\164\157\157\154\142\141" + "\162\166\151\145\167\056\165\156\144\145\162\163\150\157\157\164" + "\055\142\157\164\164\157\155\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\040\076\040\165\156\144\145\162\163\150" + "\157\157\164\056\142\157\164\164\157\155\040\173\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\055\061\160\170\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\073\040\142\141\143\153\147\162\157\165\156\144\072\040\154\151" + "\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157" + "\040\164\157\160\054\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\056\165\156\144\145\162\163\150\157\157\164\055\164\157\160" + "\040\076\040\165\156\144\145\162\163\150\157\157\164\056\164\157" + "\160\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\056\165\156" + "\144\145\162\163\150\157\157\164\055\164\157\160\040\076\040\165" + "\156\144\145\162\163\150\157\157\164\056\164\157\160\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163\145" + "\164\040\060\040\061\160\170\040\141\154\160\150\141\050\100\163" + "\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\065\051\073\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\142\157\164\164\157\155\054\040\141\154\160\150\141" + "\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145" + "\156\164\040\064\160\170\051\073\040\175\012\012\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\056\163\151\144\145\142" + "\141\162\055\160\141\156\145\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\056\165\156\144\145\162\163\150\157\157" + "\164\055\142\157\164\164\157\155\040\076\040\165\156\144\145\162" + "\163\150\157\157\164\056\142\157\164\164\157\155\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\163\143\162\157\154\154" + "\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163\150" + "\157\157\164\055\142\157\164\164\157\155\040\076\040\165\156\144" + "\145\162\163\150\157\157\164\056\142\157\164\164\157\155\040\173" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\060\040\055\061\160\170\040\141\154\160\150\141\050" + "\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\073\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\164\157\160\054\040\141\154\160\150\141\050" + "\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142" + "\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\054\040\164\162\141\156\163\160\141\162\145\156" + "\164\040\064\160\170\051\073\040\175\012\012\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\056\165\156\144\145\162\163\150\157\157\164" + "\055\163\164\141\162\164\072\144\151\162\050\154\164\162\051\040" + "\076\040\165\156\144\145\162\163\150\157\157\164\056\154\145\146" + "\164\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040\163" + "\143\162\157\154\154\145\144\167\151\156\144\157\167\056\165\156" + "\144\145\162\163\150\157\157\164\055\163\164\141\162\164\072\144" + "\151\162\050\154\164\162\051\040\076\040\165\156\144\145\162\163" + "\150\157\157\164\056\154\145\146\164\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\061\160" + "\170\040\060\040\141\154\160\150\141\050\100\163\145\143\157\156" + "\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162" + "\151\147\150\164\054\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\163\143\162\157\154\154\145\144\167\151\156\144\157" + "\167\056\165\156\144\145\162\163\150\157\157\164\055\163\164\141" + "\162\164\072\144\151\162\050\162\164\154\051\040\076\040\165\156" + "\144\145\162\163\150\157\157\164\056\162\151\147\150\164\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\163\143\162\157" + "\154\154\145\144\167\151\156\144\157\167\056\165\156\144\145\162" + "\163\150\157\157\164\055\163\164\141\162\164\072\144\151\162\050" + "\162\164\154\051\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\162\151\147\150\164\040\173\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\151\156\163\145\164\040\055\061\160\170" + "\040\060\040\141\154\160\150\141\050\100\163\145\143\157\156\144" + "\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141\144" + "\145\137\143\157\154\157\162\054\060\056\067\065\051\073\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\154\145" + "\146\164\054\040\141\154\160\150\141\050\100\163\145\143\157\156" + "\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\054\040" + "\164\162\141\156\163\160\141\162\145\156\164\040\064\160\170\051" + "\073\040\175\012\012\056\143\157\156\164\145\156\164\055\160\141" + "\156\145\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056" + "\165\156\144\145\162\163\150\157\157\164\055\145\156\144\072\144" + "\151\162\050\154\164\162\051\040\076\040\165\156\144\145\162\163" + "\150\157\157\164\056\162\151\147\150\164\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\163\143\162\157\154\154\145\144" + "\167\151\156\144\157\167\056\165\156\144\145\162\163\150\157\157" + "\164\055\145\156\144\072\144\151\162\050\154\164\162\051\040\076" + "\040\165\156\144\145\162\163\150\157\157\164\056\162\151\147\150" + "\164\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\055\061\160\170\040\060\040\141\154\160" + "\150\141\050\100\163\145\143\157\156\144\141\162\171\137\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\067\065\051\073\040\142\141\143\153\147\162\157" + "\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\154\145\146\164\054\040\141\154" + "\160\150\141\050\100\163\145\143\157\156\144\141\162\171\137\163" + "\151\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\067\065\051\054\040\164\162\141\156\163\160" + "\141\162\145\156\164\040\064\160\170\051\073\040\175\012\012\056" + "\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\163\143\162\157\154" + "\154\145\144\167\151\156\144\157\167\056\165\156\144\145\162\163" + "\150\157\157\164\055\145\156\144\072\144\151\162\050\162\164\154" + "\051\040\076\040\165\156\144\145\162\163\150\157\157\164\056\154" + "\145\146\164\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\163\143\162\157\154\154\145\144\167\151\156\144\157\167\056" + "\165\156\144\145\162\163\150\157\157\164\055\145\156\144\072\144" + "\151\162\050\162\164\154\051\040\076\040\165\156\144\145\162\163" + "\150\157\157\164\056\154\145\146\164\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\151\156\163\145\164\040\061\160" + "\170\040\060\040\141\154\160\150\141\050\100\163\145\143\157\156" + "\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\067\065\051\073\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\154\151\156\145" + "\141\162\055\147\162\141\144\151\145\156\164\050\164\157\040\162" + "\151\147\150\164\054\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\065\051" + "\054\040\164\162\141\156\163\160\141\162\145\156\164\040\064\160" + "\170\051\073\040\175\012\012\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\146\154\141\160\040\076\040\144\151\155\155\151\156" + "\147\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\154" + "\145\141\146\154\145\164\040\076\040\144\151\155\155\151\156\147" + "\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\156\141" + "\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076\040" + "\144\151\155\155\151\156\147\054\040\056\143\157\156\164\145\156" + "\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\157\166\145\162\154\141\171\055\163\160\154" + "\151\164\055\166\151\145\167\040\076\040\144\151\155\155\151\156" + "\147\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040\146" + "\154\141\160\040\076\040\144\151\155\155\151\156\147\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\154\145\141\146\154" + "\145\164\040\076\040\144\151\155\155\151\156\147\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\156\141\166\151\147\141" + "\164\151\157\156\055\166\151\145\167\040\076\040\144\151\155\155" + "\151\156\147\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\157\166\145\162\154\141\171\055\163\160\154\151\164\055\166" + "\151\145\167\040\076\040\144\151\155\155\151\156\147\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\072\040\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\073\040\175\012\012\056" + "\143\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\146\154\141\160\040" + "\076\040\163\150\141\144\157\167\054\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\154\145\141\146\154\145\164\040\076\040" + "\163\150\141\144\157\167\054\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\156\141\166\151\147\141\164\151\157\156\055\166" + "\151\145\167\040\076\040\163\150\141\144\157\167\054\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\157\166\145\162\154\141" + "\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163" + "\150\141\144\157\167\054\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141" + "\156\145\040\146\154\141\160\040\076\040\163\150\141\144\157\167" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\154\145" + "\141\146\154\145\164\040\076\040\163\150\141\144\157\167\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\156\141\166\151" + "\147\141\164\151\157\156\055\166\151\145\167\040\076\040\163\150" + "\141\144\157\167\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156" + "\145\040\157\166\145\162\154\141\171\055\163\160\154\151\164\055" + "\166\151\145\167\040\076\040\163\150\141\144\157\167\040\173\040" + "\155\151\156\055\167\151\144\164\150\072\040\065\066\160\170\073" + "\040\155\151\156\055\150\145\151\147\150\164\072\040\065\066\160" + "\170\073\040\175\012\012\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\146\154\141\160\040\076\040\163\150\141\144\157\167\056" + "\154\145\146\164\054\040\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\154\145\141\146\154\145\164\040\076\040\163\150\141\144" + "\157\167\056\154\145\146\164\054\040\056\143\157\156\164\145\156" + "\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\156\141\166\151\147\141\164\151\157\156\055" + "\166\151\145\167\040\076\040\163\150\141\144\157\167\056\154\145" + "\146\164\054\040\056\143\157\156\164\145\156\164\055\160\141\156" + "\145\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\157\166\145\162\154\141\171\055\163\160\154\151\164\055\166\151" + "\145\167\040\076\040\163\150\141\144\157\167\056\154\145\146\164" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\146\154" + "\141\160\040\076\040\163\150\141\144\157\167\056\154\145\146\164" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\154\145" + "\141\146\154\145\164\040\076\040\163\150\141\144\157\167\056\154" + "\145\146\164\054\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\156\141\166\151\147\141\164\151\157\156\055\166\151\145\167" + "\040\076\040\163\150\141\144\157\167\056\154\145\146\164\054\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\157\166\145\162" + "\154\141\171\055\163\160\154\151\164\055\166\151\145\167\040\076" + "\040\163\150\141\144\157\167\056\154\145\146\164\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\162\151\147\150\164\054\040\141\154\160\150\141" + "\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\067\051\054\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\061\064\051" + "\040\064\060\160\170\054\040\141\154\160\150\141\050\100\163\145" + "\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\054\060\051\040\065" + "\066\160\170\051\054\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\162\151\147\150\164\054\040" + "\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162\171" + "\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\064\051\054\040\141\154\160\150\141" + "\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\061\064\051\040\067\160\170\054\040\141\154\160\150\141" + "\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\051\040\062\064\160\170\051\073\040\175\012\012\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\040\146\154\141\160\040\076\040" + "\163\150\141\144\157\167\056\162\151\147\150\164\054\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\154\145\141\146\154\145" + "\164\040\076\040\163\150\141\144\157\167\056\162\151\147\150\164" + "\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\156\141" + "\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076\040" + "\163\150\141\144\157\167\056\162\151\147\150\164\054\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\157\166\145\162\154\141" + "\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163" + "\150\141\144\157\167\056\162\151\147\150\164\054\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\146\154\141\160\040\076\040" + "\163\150\141\144\157\167\056\162\151\147\150\164\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\154\145\141\146\154\145" + "\164\040\076\040\163\150\141\144\157\167\056\162\151\147\150\164" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\156\141" + "\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076\040" + "\163\150\141\144\157\167\056\162\151\147\150\164\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\157\166\145\162\154\141" + "\171\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163" + "\150\141\144\157\167\056\162\151\147\150\164\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040" + "\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164\050" + "\164\157\040\154\145\146\164\054\040\141\154\160\150\141\050\100" + "\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\067\051\054\040\141\154\160\150\141\050\100\163\145\143\157\156" + "\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040\064" + "\060\160\170\054\040\141\154\160\150\141\050\100\163\145\143\157" + "\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150" + "\141\144\145\137\143\157\154\157\162\054\060\051\040\065\066\160" + "\170\051\054\040\154\151\156\145\141\162\055\147\162\141\144\151" + "\145\156\164\050\164\157\040\154\145\146\164\054\040\141\154\160" + "\150\141\050\100\163\145\143\157\156\144\141\162\171\137\163\151" + "\144\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157" + "\162\054\060\056\064\051\054\040\141\154\160\150\141\050\100\163" + "\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056\061" + "\064\051\040\067\160\170\054\040\141\154\160\150\141\050\100\163" + "\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162" + "\137\163\150\141\144\145\137\143\157\154\157\162\054\060\051\040" + "\062\064\160\170\051\073\040\175\012\012\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\146\154\141\160\040\076\040\163\150\141" + "\144\157\167\056\165\160\054\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\154\145\141\146\154\145\164\040\076\040\163\150" + "\141\144\157\167\056\165\160\054\040\056\143\157\156\164\145\156" + "\164\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055" + "\160\141\156\145\040\156\141\166\151\147\141\164\151\157\156\055" + "\166\151\145\167\040\076\040\163\150\141\144\157\167\056\165\160" + "\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\157\166" + "\145\162\154\141\171\055\163\160\154\151\164\055\166\151\145\167" + "\040\076\040\163\150\141\144\157\167\056\165\160\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\146\154\141\160\040\076" + "\040\163\150\141\144\157\167\056\165\160\054\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164\145" + "\156\164\055\160\141\156\145\040\154\145\141\146\154\145\164\040" + "\076\040\163\150\141\144\157\167\056\165\160\054\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\156\141\166\151\147\141\164" + "\151\157\156\055\166\151\145\167\040\076\040\163\150\141\144\157" + "\167\056\165\160\054\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\040\056\143\157\156\164\145\156\164\055\160\141\156" + "\145\040\157\166\145\162\154\141\171\055\163\160\154\151\164\055" + "\166\151\145\167\040\076\040\163\150\141\144\157\167\056\165\160" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\151\155" + "\141\147\145\072\040\154\151\156\145\141\162\055\147\162\141\144" + "\151\145\156\164\050\164\157\040\142\157\164\164\157\155\054\040" + "\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162\171" + "\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\067\051\054\040\141\154\160\150\141" + "\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162\054" + "\060\056\061\064\051\040\064\060\160\170\054\040\141\154\160\150" + "\141\050\100\163\145\143\157\156\144\141\162\171\137\163\151\144" + "\145\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\051\040\065\066\160\170\051\054\040\154\151\156\145\141" + "\162\055\147\162\141\144\151\145\156\164\050\164\157\040\142\157" + "\164\164\157\155\054\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\064\051\054" + "\040\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162" + "\171\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\061\064\051\040\067\160\170\054" + "\040\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162" + "\171\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\051\040\062\064\160\170\051\073\040" + "\175\012\012\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\146" + "\154\141\160\040\076\040\163\150\141\144\157\167\056\144\157\167" + "\156\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040\154" + "\145\141\146\154\145\164\040\076\040\163\150\141\144\157\167\056" + "\144\157\167\156\054\040\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\156\141\166\151\147\141\164\151\157\156\055\166\151\145" + "\167\040\076\040\163\150\141\144\157\167\056\144\157\167\156\054" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\157\166\145" + "\162\154\141\171\055\163\160\154\151\164\055\166\151\145\167\040" + "\076\040\163\150\141\144\157\167\056\144\157\167\156\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\146\154\141\160\040" + "\076\040\163\150\141\144\157\167\056\144\157\167\156\054\040\056" + "\163\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\154\145\141\146\154" + "\145\164\040\076\040\163\150\141\144\157\167\056\144\157\167\156" + "\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145\040" + "\056\143\157\156\164\145\156\164\055\160\141\156\145\040\156\141" + "\166\151\147\141\164\151\157\156\055\166\151\145\167\040\076\040" + "\163\150\141\144\157\167\056\144\157\167\156\054\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\040\157\166\145\162\154\141\171" + "\055\163\160\154\151\164\055\166\151\145\167\040\076\040\163\150" + "\141\144\157\167\056\144\157\167\156\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\151\155\141\147\145\072\040\154\151" + "\156\145\141\162\055\147\162\141\144\151\145\156\164\050\164\157" + "\040\164\157\160\054\040\141\154\160\150\141\050\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\163" + "\150\141\144\145\137\143\157\154\157\162\054\060\056\067\051\054" + "\040\141\154\160\150\141\050\100\163\145\143\157\156\144\141\162" + "\171\137\163\151\144\145\142\141\162\137\163\150\141\144\145\137" + "\143\157\154\157\162\054\060\056\061\064\051\040\064\060\160\170" + "\054\040\141\154\160\150\141\050\100\163\145\143\157\156\144\141" + "\162\171\137\163\151\144\145\142\141\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\054\060\051\040\065\066\160\170\051\054" + "\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156\164" + "\050\164\157\040\164\157\160\054\040\141\154\160\150\141\050\100" + "\163\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\064\051\054\040\141\154\160\150\141\050\100\163\145\143\157\156" + "\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\056\061\064\051\040\067" + "\160\170\054\040\141\154\160\150\141\050\100\163\145\143\157\156" + "\144\141\162\171\137\163\151\144\145\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\054\060\051\040\062\064\160\170" + "\051\073\040\175\012\012\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\142\141\156\156\145\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\167\151\144\147\145\164\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\040\142\141\156\156\145\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\167\151" + "\144\147\145\164\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\155\151\170\050\100\141\143" + "\143\145\156\164\137\142\147\137\143\157\154\157\162\054\100\163" + "\145\143\157\156\144\141\162\171\137\163\151\144\145\142\141\162" + "\137\142\147\137\143\157\154\157\162\054\060\056\067\051\073\040" + "\143\157\154\157\162\072\040\100\163\145\143\157\156\144\141\162" + "\171\137\163\151\144\145\142\141\162\137\146\147\137\143\157\154" + "\157\162\073\040\175\012\012\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\040\142\141\156\156\145\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\167\151\144\147\145\164\072\142\141" + "\143\153\144\162\157\160\054\040\056\163\151\144\145\142\141\162" + "\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055\160" + "\141\156\145\040\142\141\156\156\145\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\167\151\144\147\145\164\072\142" + "\141\143\153\144\162\157\160\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\155\151\170\050" + "\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162" + "\054\100\163\145\143\157\156\144\141\162\171\137\163\151\144\145" + "\142\141\162\137\142\141\143\153\144\162\157\160\137\143\157\154" + "\157\162\054\060\056\070\065\051\073\040\175\012\012\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\072\144\151\162\050\154\164\162" + "\051\054\040\056\143\157\156\164\145\156\164\055\160\141\156\145" + "\040\056\163\151\144\145\142\141\162\055\160\141\156\145\072\144" + "\151\162\050\154\164\162\051\040\142\141\156\156\145\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147" + "\145\164\054\040\056\143\157\156\164\145\156\164\055\160\141\156" + "\145\040\056\163\151\144\145\142\141\162\055\160\141\156\145\056" + "\145\156\144\072\144\151\162\050\162\164\154\051\054\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\056\145\156\144\072\144\151" + "\162\050\162\164\154\051\040\142\141\156\156\145\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147\145" + "\164\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\072\144" + "\151\162\050\154\164\162\051\054\040\056\163\151\144\145\142\141" + "\162\055\160\141\156\145\040\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\072\144\151\162\050\154\164\162\051\040\142\141" + "\156\156\145\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\167\151\144\147\145\164\054\040\056\163\151\144\145\142" + "\141\162\055\160\141\156\145\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\056\145\156\144\072\144\151\162\050\162\164" + "\154\051\054\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145\056" + "\145\156\144\072\144\151\162\050\162\164\154\051\040\142\141\156" + "\156\145\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\167\151\144\147\145\164\040\173\040\142\157\170\055\163\150" + "\141\144\157\167\072\040\151\156\163\145\164\040\055\061\160\170" + "\040\060\040\100\163\145\143\157\156\144\141\162\171\137\163\151" + "\144\145\142\141\162\137\142\157\162\144\145\162\137\143\157\154" + "\157\162\073\040\175\012\012\056\143\157\156\164\145\156\164\055" + "\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160\141" + "\156\145\072\144\151\162\050\162\164\154\051\054\040\056\143\157" + "\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144\145" + "\142\141\162\055\160\141\156\145\072\144\151\162\050\162\164\154" + "\051\040\142\141\156\156\145\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\167\151\144\147\145\164\054\040\056\143" + "\157\156\164\145\156\164\055\160\141\156\145\040\056\163\151\144" + "\145\142\141\162\055\160\141\156\145\056\145\156\144\072\144\151" + "\162\050\154\164\162\051\054\040\056\143\157\156\164\145\156\164" + "\055\160\141\156\145\040\056\163\151\144\145\142\141\162\055\160" + "\141\156\145\056\145\156\144\072\144\151\162\050\154\164\162\051" + "\040\142\141\156\156\145\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\167\151\144\147\145\164\054\040\056\163\151" + "\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156\164" + "\145\156\164\055\160\141\156\145\072\144\151\162\050\162\164\154" + "\051\054\040\056\163\151\144\145\142\141\162\055\160\141\156\145" + "\040\056\143\157\156\164\145\156\164\055\160\141\156\145\072\144" + "\151\162\050\162\164\154\051\040\142\141\156\156\145\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147" + "\145\164\054\040\056\163\151\144\145\142\141\162\055\160\141\156" + "\145\040\056\143\157\156\164\145\156\164\055\160\141\156\145\056" + "\145\156\144\072\144\151\162\050\154\164\162\051\054\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\056\143\157\156" + "\164\145\156\164\055\160\141\156\145\056\145\156\144\072\144\151" + "\162\050\154\164\162\051\040\142\141\156\156\145\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147\145" + "\164\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\151\156\163\145\164\040\061\160\170\040\060\040\100\163\145\143" + "\157\156\144\141\162\171\137\163\151\144\145\142\141\162\137\142" + "\157\162\144\145\162\137\143\157\154\157\162\073\040\175\012\012" + "\056\163\151\144\145\142\141\162\055\160\141\156\145\040\056\163" + "\151\144\145\142\141\162\055\160\141\156\145\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\164\162\141\156\163\160\141\162\145\156\164\073\040\143\157\154" + "\157\162\072\040\151\156\150\145\162\151\164\073\040\175\012\012" + "\163\164\141\143\153\163\151\144\145\142\141\162\040\162\157\167" + "\040\173\040\160\141\144\144\151\156\147\072\040\061\060\160\170" + "\040\064\160\170\073\040\175\012\012\163\164\141\143\153\163\151" + "\144\145\142\141\162\040\162\157\167\040\076\040\154\141\142\145" + "\154\040\173\040\160\141\144\144\151\156\147\055\154\145\146\164" + "\072\040\066\160\170\073\040\160\141\144\144\151\156\147\055\162" + "\151\147\150\164\072\040\066\160\170\073\040\175\012\012\163\164" + "\141\143\153\163\151\144\145\142\141\162\040\162\157\167\056\156" + "\145\145\144\163\055\141\164\164\145\156\164\151\157\156\040\076" + "\040\154\141\142\145\154\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\163\151\172\145\072\040\066\160\170\040\066\160" + "\170\054\040\060\040\060\073\040\175\012\012\057\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\040\116\141\166\151\147\141\164\151\157\156\040\123\151" + "\144\145\142\141\162\040\052\040\052\057\012\056\156\141\166\151" + "\147\141\164\151\157\156\055\163\151\144\145\142\141\162\040\173" + "\040\160\141\144\144\151\156\147\072\040\066\160\170\040\060\073" + "\040\175\012\012\056\156\141\166\151\147\141\164\151\157\156\055" + "\163\151\144\145\142\141\162\054\040\056\156\141\166\151\147\141" + "\164\151\157\156\055\163\151\144\145\142\141\162\056\166\151\145" + "\167\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040" + "\056\156\141\166\151\147\141\164\151\157\156\055\163\151\144\145" + "\142\141\162\056\144\151\141\154\157\147\055\141\143\164\151\157" + "\156\055\142\157\170\054\040\056\156\141\166\151\147\141\164\151" + "\157\156\055\163\151\144\145\142\141\162\056\166\151\145\167\072" + "\144\151\163\141\142\154\145\144\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\143\157\154\157\162\072" + "\040\151\156\150\145\162\151\164\073\040\175\012\012\056\156\141" + "\166\151\147\141\164\151\157\156\055\163\151\144\145\142\141\162" + "\056\142\141\143\153\147\162\157\165\156\144\054\040\056\156\141" + "\166\151\147\141\164\151\157\156\055\163\151\144\145\142\141\162" + "\056\142\141\143\153\147\162\157\165\156\144\072\144\151\163\141" + "\142\154\145\144\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\100\167\151\156\144\157\167" + "\137\142\147\137\143\157\154\157\162\073\040\143\157\154\157\162" + "\072\040\100\167\151\156\144\157\167\137\146\147\137\143\157\154" + "\157\162\073\040\175\012\012\056\156\141\166\151\147\141\164\151" + "\157\156\055\163\151\144\145\142\141\162\040\162\157\167\056\141" + "\143\164\151\166\141\164\141\142\154\145\072\150\157\166\145\162" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\060\067\051\073\040\175" + "\012\012\056\156\141\166\151\147\141\164\151\157\156\055\163\151" + "\144\145\142\141\162\040\162\157\167\056\141\143\164\151\166\141" + "\164\141\142\154\145\072\141\143\164\151\166\145\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\066\051\073\040\175\012\012\056\156" + "\141\166\151\147\141\164\151\157\156\055\163\151\144\145\142\141" + "\162\040\162\157\167\056\141\143\164\151\166\141\164\141\142\154" + "\145\056\150\141\163\055\157\160\145\156\055\160\157\160\165\160" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\060\067\051\073\040\175" + "\012\012\056\156\141\166\151\147\141\164\151\157\156\055\163\151" + "\144\145\142\141\162\040\162\157\167\056\141\143\164\151\166\141" + "\164\141\142\154\145\072\163\145\154\145\143\164\145\144\072\150" + "\157\166\145\162\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143" + "\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061\063" + "\051\073\040\175\012\012\056\156\141\166\151\147\141\164\151\157" + "\156\055\163\151\144\145\142\141\162\040\162\157\167\056\141\143" + "\164\151\166\141\164\141\142\154\145\072\163\145\154\145\143\164" + "\145\144\072\141\143\164\151\166\145\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154" + "\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162" + "\054\060\056\061\071\051\073\040\175\012\012\056\156\141\166\151" + "\147\141\164\151\157\156\055\163\151\144\145\142\141\162\040\162" + "\157\167\056\141\143\164\151\166\141\164\141\142\154\145\056\150" + "\141\163\055\157\160\145\156\055\160\157\160\165\160\072\163\145" + "\154\145\143\164\145\144\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\061\063\051\073\040\175\012\012\056\156\141\166\151\147\141\164" + "\151\157\156\055\163\151\144\145\142\141\162\040\162\157\167\072" + "\163\145\154\145\143\164\145\144\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\051\073\040\175\012\012\056\156\141\166\151\147\141" + "\164\151\157\156\055\163\151\144\145\142\141\162\040\076\040\163" + "\145\160\141\162\141\164\157\162\040\173\040\155\141\162\147\151" + "\156\072\040\066\160\170\073\040\175\012\012\056\156\141\166\151" + "\147\141\164\151\157\156\055\163\151\144\145\142\141\162\040\076" + "\040\162\157\167\040\173\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\063\066\160\170\073\040\160\141\144\144\151\156\147" + "\072\040\060\040\070\160\170\073\040\142\157\162\144\145\162\055" + "\162\141\144\151\165\163\072\040\066\160\170\073\040\155\141\162" + "\147\151\156\072\040\060\040\066\160\170\040\062\160\170\073\040" + "\175\012\012\100\153\145\171\146\162\141\155\145\163\040\163\160" + "\151\156\040\173\040\164\157\040\173\040\164\162\141\156\163\146" + "\157\162\155\072\040\162\157\164\141\164\145\050\061\164\165\162" + "\156\051\073\040\175\040\175\012\012\163\160\151\156\156\145\162" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\156" + "\157\156\145\073\040\157\160\141\143\151\164\171\072\040\060\073" + "\040\055\147\164\153\055\151\143\157\156\055\163\157\165\162\143" + "\145\072\040\055\147\164\153\055\151\143\157\156\164\150\145\155" + "\145\050\042\160\162\157\143\145\163\163\055\167\157\162\153\151" + "\156\147\055\163\171\155\142\157\154\151\143\042\051\073\040\175" + "\012\012\163\160\151\156\156\145\162\072\143\150\145\143\153\145" + "\144\040\173\040\157\160\141\143\151\164\171\072\040\061\073\040" + "\141\156\151\155\141\164\151\157\156\072\040\163\160\151\156\040" + "\061\163\040\154\151\156\145\141\162\040\151\156\146\151\156\151" + "\164\145\073\040\175\012\012\163\160\151\156\156\145\162\072\143" + "\150\145\143\153\145\144\072\144\151\163\141\142\154\145\144\040" + "\173\040\157\160\141\143\151\164\171\072\040\060\056\065\073\040" + "\175\012\012\163\160\151\156\142\165\164\164\157\156\040\173\040" + "\160\141\144\144\151\156\147\072\040\060\073\040\142\157\162\144" + "\145\162\055\163\160\141\143\151\156\147\072\040\060\073\040\057" + "\052\040\072\156\157\164\040\150\145\162\145\040\152\165\163\164" + "\040\164\157\040\142\165\155\160\040\163\160\145\143\151\146\151" + "\143\151\164\171\040\141\142\157\166\145\040\164\150\141\164\040" + "\157\146\040\164\150\145\040\154\151\163\164\040\142\165\164\164" + "\157\156\040\163\164\171\154\151\156\147\040\052\057\040\175\012" + "\012\163\160\151\156\142\165\164\164\157\156\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\165\160\072\156\157\164\050\056\146\154\141\164\051\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\160\151\156\142" + "\165\164\164\157\156\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156" + "\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050" + "\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165" + "\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160" + "\141\161\165\145\051\040\173\040\155\141\162\147\151\156\072\040" + "\060\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\060\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\142\157\162\144\145\162\055\163\164" + "\171\154\145\072\040\163\157\154\151\144\073\040\142\157\162\144" + "\145\162\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061" + "\051\073\040\175\012\012\163\160\151\156\142\165\164\164\157\156" + "\072\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040" + "\173\040\057\052\040\072\156\157\164\040\150\145\162\145\040\152" + "\165\163\164\040\164\157\040\142\165\155\160\040\163\160\145\143" + "\151\146\151\143\151\164\171\040\141\142\157\166\145\040\164\150" + "\141\164\040\157\146\040\164\150\145\040\154\151\163\164\040\142" + "\165\164\164\157\156\040\163\164\171\154\151\156\147\040\052\057" + "\040\175\012\012\163\160\151\156\142\165\164\164\157\156\072\156" + "\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076\040" + "\164\145\170\164\040\173\040\155\151\156\055\167\151\144\164\150" + "\072\040\062\070\160\170\073\040\160\141\144\144\151\156\147\072" + "\040\066\160\170\073\040\175\012\012\163\160\151\156\142\165\164" + "\164\157\156\072\156\157\164\050\056\166\145\162\164\151\143\141" + "\154\051\040\076\040\142\165\164\164\157\156\056\151\155\141\147" + "\145\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050" + "\056\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163" + "\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164" + "\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051" + "\054\040\163\160\151\156\142\165\164\164\157\156\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\040\173\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\061\066\160\170\073\040" + "\155\151\156\055\167\151\144\164\150\072\040\062\062\160\170\073" + "\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072" + "\040\060\073\040\160\141\144\144\151\156\147\055\164\157\160\072" + "\040\060\073\040\142\157\162\144\145\162\055\154\145\146\164\055" + "\167\151\144\164\150\072\040\061\160\170\073\040\175\012\012\163" + "\160\151\156\142\165\164\164\157\156\072\156\157\164\050\056\166" + "\145\162\164\151\143\141\154\051\040\076\040\142\165\164\164\157" + "\156\056\151\155\141\147\145\055\142\165\164\164\157\156\056\165" + "\160\072\156\157\164\050\056\146\154\141\164\051\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\144\151\162\050\162\164\154\051\054" + "\040\163\160\151\156\142\165\164\164\157\156\072\156\157\164\050" + "\056\166\145\162\164\151\143\141\154\051\040\076\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164\051" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050\162" + "\164\154\051\040\173\040\142\157\162\144\145\162\055\154\145\146" + "\164\055\167\151\144\164\150\072\040\060\073\040\142\157\162\144" + "\145\162\055\162\151\147\150\164\055\167\151\144\164\150\072\040" + "\061\160\170\073\040\175\012\012\163\160\151\156\142\165\164\164" + "\157\156\072\156\157\164\050\056\166\145\162\164\151\143\141\154" + "\051\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145" + "\055\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056" + "\146\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145" + "\144\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145" + "\144\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072" + "\144\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150" + "\151\154\144\054\040\163\160\151\156\142\165\164\164\157\156\072" + "\156\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\144" + "\151\162\050\154\164\162\051\072\154\141\163\164\055\143\150\151" + "\154\144\040\173\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\060\040\066\160\170\040\066\160\170\040\060\073" + "\040\175\012\012\163\160\151\156\142\165\164\164\157\156\072\156" + "\157\164\050\056\166\145\162\164\151\143\141\154\051\040\076\040" + "\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165\164" + "\164\157\156\056\165\160\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144" + "\054\040\163\160\151\156\142\165\164\164\157\156\072\156\157\164" + "\050\056\166\145\162\164\151\143\141\154\051\040\076\040\142\165" + "\164\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157" + "\156\056\144\157\167\156\072\156\157\164\050\056\146\154\141\164" + "\051\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156" + "\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162" + "\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\157\160\141\161\165\145\051\072\144\151\162\050" + "\162\164\154\051\072\146\151\162\163\164\055\143\150\151\154\144" + "\040\173\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\066\160\170\040\060\040\060\040\066\160\170\073\040\175" + "\012\012\163\160\151\156\142\165\164\164\157\156\056\166\145\162" + "\164\151\143\141\154\040\173\040\057\052\040\072\156\157\164\040" + "\150\145\162\145\040\152\165\163\164\040\164\157\040\142\165\155" + "\160\040\163\160\145\143\151\146\151\143\151\164\171\040\141\142" + "\157\166\145\040\164\150\141\164\040\157\146\040\164\150\145\040" + "\154\151\163\164\040\142\165\164\164\157\156\040\163\164\171\154" + "\151\156\147\040\052\057\040\175\012\012\163\160\151\156\142\165" + "\164\164\157\156\056\166\145\162\164\151\143\141\154\040\076\040" + "\164\145\170\164\040\173\040\155\151\156\055\150\145\151\147\150" + "\164\072\040\063\060\160\170\073\040\155\151\156\055\167\151\144" + "\164\150\072\040\063\060\160\170\073\040\175\012\012\163\160\151" + "\156\142\165\164\164\157\156\056\166\145\162\164\151\143\141\154" + "\040\076\040\142\165\164\164\157\156\056\151\155\141\147\145\055" + "\142\165\164\164\157\156\056\165\160\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\054\040\163\160\151\156\142" + "\165\164\164\157\156\056\166\145\162\164\151\143\141\154\040\076" + "\040\142\165\164\164\157\156\056\151\155\141\147\145\055\142\165" + "\164\164\157\156\056\144\157\167\156\072\156\157\164\050\056\146" + "\154\141\164\051\072\156\157\164\050\056\162\141\151\163\145\144" + "\051\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144" + "\055\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145" + "\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\157\160\141\161\165\145\051\072\154" + "\141\163\164\055\143\150\151\154\144\040\173\040\142\157\162\144" + "\145\162\055\164\157\160\055\167\151\144\164\150\072\040\061\160" + "\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165\163" + "\072\040\060\040\060\040\066\160\170\040\066\160\170\073\040\175" + "\012\012\163\160\151\156\142\165\164\164\157\156\056\166\145\162" + "\164\151\143\141\154\040\076\040\142\165\164\164\157\156\056\151" + "\155\141\147\145\055\142\165\164\164\157\156\056\165\160\072\156" + "\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056\162" + "\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147\147" + "\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141\161" + "\165\145\051\072\146\151\162\163\164\055\143\150\151\154\144\054" + "\040\163\160\151\156\142\165\164\164\157\156\056\166\145\162\164" + "\151\143\141\154\040\076\040\142\165\164\164\157\156\056\151\155" + "\141\147\145\055\142\165\164\164\157\156\056\144\157\167\156\072" + "\156\157\164\050\056\146\154\141\164\051\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\072\146\151\162\163\164\055\143\150\151\154\144" + "\040\173\040\142\157\162\144\145\162\055\142\157\164\164\157\155" + "\055\167\151\144\164\150\072\040\061\160\170\073\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\066\160\170\040" + "\066\160\170\040\060\040\060\073\040\175\012\012\163\167\151\164" + "\143\150\040\173\040\142\157\162\144\145\162\055\162\141\144\151" + "\165\163\072\040\061\064\160\170\073\040\160\141\144\144\151\156" + "\147\072\040\063\160\170\073\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061" + "\065\051\073\040\175\012\012\163\167\151\164\143\150\072\150\157" + "\166\145\162\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\062\051\073" + "\040\175\012\012\163\167\151\164\143\150\072\141\143\164\151\166" + "\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\062\065\051\073\040" + "\175\012\012\163\167\151\164\143\150\040\173\040\157\165\164\154" + "\151\156\145\072\040\060\040\163\157\154\151\144\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\157\165\164\154\151\156" + "\145\055\157\146\146\163\145\164\072\040\065\160\170\073\040\164" + "\162\141\156\163\151\164\151\157\156\072\040\157\165\164\154\151" + "\156\145\055\143\157\154\157\162\040\062\060\060\155\163\040\143" + "\165\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065" + "\054\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056" + "\071\064\051\054\040\157\165\164\154\151\156\145\055\167\151\144" + "\164\150\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\163\167\151" + "\164\143\150\072\146\157\143\165\163\072\146\157\143\165\163\055" + "\166\151\163\151\142\154\145\040\173\040\157\165\164\154\151\156" + "\145\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100" + "\141\143\143\145\156\164\137\143\157\154\157\162\054\060\056\065" + "\051\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150" + "\072\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157" + "\146\146\163\145\164\072\040\061\160\170\073\040\175\012\012\163" + "\167\151\164\143\150\072\144\151\163\141\142\154\145\144\040\173" + "\040\146\151\154\164\145\162\072\040\157\160\141\143\151\164\171" + "\050\060\056\065\051\073\040\175\012\012\163\167\151\164\143\150" + "\040\076\040\163\154\151\144\145\162\040\173\040\155\151\156\055" + "\167\151\144\164\150\072\040\062\060\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\062\060\160\170\073\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\065\060" + "\045\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\155\151\170\050\167\150\151\164\145\054\100" + "\166\151\145\167\137\142\147\137\143\157\154\157\162\054\060\056" + "\062\051\073\040\142\157\170\055\163\150\141\144\157\167\072\040" + "\060\040\062\160\170\040\064\160\170\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\062\051\073\040\175\012" + "\012\163\167\151\164\143\150\040\076\040\163\154\151\144\145\162" + "\072\144\151\163\141\142\154\145\144\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\060\040\062\160\170\040\064\160" + "\170\040\164\162\141\156\163\160\141\162\145\156\164\073\040\175" + "\012\012\163\167\151\164\143\150\072\150\157\166\145\162\040\076" + "\040\163\154\151\144\145\162\054\040\163\167\151\164\143\150\072" + "\141\143\164\151\166\145\040\076\040\163\154\151\144\145\162\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\072\040\167\150" + "\151\164\145\073\040\175\012\012\163\167\151\164\143\150\072\143" + "\150\145\143\153\145\144\040\173\040\143\157\154\157\162\072\040" + "\100\141\143\143\145\156\164\137\146\147\137\143\157\154\157\162" + "\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\100\141\143\143\145\156\164\137\142\147\137\143" + "\157\154\157\162\073\040\175\012\012\163\167\151\164\143\150\072" + "\143\150\145\143\153\145\144\072\150\157\166\145\162\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145" + "\072\040\151\155\141\147\145\050\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\061\051\051" + "\073\040\175\012\012\163\167\151\164\143\150\072\143\150\145\143" + "\153\145\144\072\141\143\164\151\166\145\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\151\155\141\147\145\072\040\151" + "\155\141\147\145\050\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\062\051\051\073\040\175\012\012\163\167\151" + "\164\143\150\072\143\150\145\143\153\145\144\040\076\040\163\154" + "\151\144\145\162\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\167\150\151\164\145\073\040" + "\175\012\012\056\157\163\144\040\163\167\151\164\143\150\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\040\173\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\072\040\162\147\142\141\050\062\065\065\054\040\062\065" + "\065\054\040\062\065\065\054\040\060\056\065\051\073\040\175\012" + "\012\056\157\163\144\040\163\167\151\164\143\150\072\143\150\145" + "\143\153\145\144\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\066" + "\051\073\040\143\157\154\157\162\072\040\162\147\142\141\050\060" + "\054\040\060\054\040\060\054\040\060\056\067\065\051\073\040\175" + "\012\012\164\141\142\142\141\162\040\056\142\157\170\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\100\150\145\141\144\145\162\142\141\162\137\142\147\137" + "\143\157\154\157\162\073\040\143\157\154\157\162\072\040\100\150" + "\145\141\144\145\162\142\141\162\137\146\147\137\143\157\154\157" + "\162\073\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\060\040\055\061\160\170\040\100\150\145\141" + "\144\145\162\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\073\040\160\141\144\144\151\156\147\072\040\061\160\170" + "\073\040\160\141\144\144\151\156\147\055\164\157\160\072\040\060" + "\073\040\175\012\012\164\141\142\142\141\162\040\056\142\157\170" + "\072\142\141\143\153\144\162\157\160\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100\150" + "\145\141\144\145\162\142\141\162\137\142\141\143\153\144\162\157" + "\160\137\143\157\154\157\162\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\040\062\060\060\155\163\040\145\141\163\145" + "\055\157\165\164\073\040\175\012\012\164\141\142\142\141\162\040" + "\056\142\157\170\072\142\141\143\153\144\162\157\160\040\076\040" + "\163\143\162\157\154\154\145\144\167\151\156\144\157\167\054\040" + "\164\141\142\142\141\162\040\056\142\157\170\072\142\141\143\153" + "\144\162\157\160\040\076\040\056\163\164\141\162\164\055\141\143" + "\164\151\157\156\054\040\164\141\142\142\141\162\040\056\142\157" + "\170\072\142\141\143\153\144\162\157\160\040\076\040\056\145\156" + "\144\055\141\143\164\151\157\156\040\173\040\146\151\154\164\145" + "\162\072\040\157\160\141\143\151\164\171\050\060\056\065\051\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\146\151\154" + "\164\145\162\040\062\060\060\155\163\040\145\141\163\145\055\157" + "\165\164\073\040\175\012\012\164\141\142\142\141\162\040\164\141" + "\142\142\157\170\040\173\040\160\141\144\144\151\156\147\055\142" + "\157\164\164\157\155\072\040\066\160\170\073\040\160\141\144\144" + "\151\156\147\055\164\157\160\072\040\066\160\170\073\040\155\151" + "\156\055\150\145\151\147\150\164\072\040\063\064\160\170\073\040" + "\175\012\012\164\141\142\142\141\162\040\164\141\142\142\157\170" + "\040\076\040\164\141\142\142\157\170\143\150\151\154\144\040\173" + "\040\142\157\162\144\145\162\055\162\141\144\151\165\163\072\040" + "\066\160\170\073\040\175\012\012\164\141\142\142\141\162\040\164" + "\141\142\142\157\170\040\076\040\164\141\142\142\157\170\143\150" + "\151\154\144\040\173\040\157\165\164\154\151\156\145\072\040\060" + "\040\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145" + "\156\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\064\160\170\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157" + "\165\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060" + "\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050" + "\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065" + "\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\073\040\175\012\012\164\141\142\142\141\162\040\164\141" + "\142\142\157\170\040\076\040\164\141\142\142\157\170\143\150\151" + "\154\144\072\146\157\143\165\163\055\167\151\164\150\151\156\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\040\173\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\072\040\141" + "\154\160\150\141\050\100\141\143\143\145\156\164\137\143\157\154" + "\157\162\054\060\056\065\051\073\040\157\165\164\154\151\156\145" + "\055\167\151\144\164\150\072\040\062\160\170\073\040\157\165\164" + "\154\151\156\145\055\157\146\146\163\145\164\072\040\055\062\160" + "\170\073\040\175\012\012\164\141\142\142\141\162\040\164\141\142" + "\142\157\170\040\076\040\163\145\160\141\162\141\164\157\162\040" + "\173\040\155\141\162\147\151\156\055\164\157\160\072\040\063\160" + "\170\073\040\155\141\162\147\151\156\055\142\157\164\164\157\155" + "\072\040\063\160\170\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\157\160\141\143\151\164\171\040\061\065\060\155\163" + "\040\145\141\163\145\055\151\156\055\157\165\164\073\040\175\012" + "\012\164\141\142\142\141\162\040\164\141\142\142\157\170\040\076" + "\040\163\145\160\141\162\141\164\157\162\056\150\151\144\144\145" + "\156\040\173\040\157\160\141\143\151\164\171\072\040\060\073\040" + "\175\012\012\164\141\142\142\141\162\040\164\141\142\142\157\170" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\151\156" + "\144\151\143\141\164\157\162\040\173\040\155\151\156\055\167\151" + "\144\164\150\072\040\062\160\170\073\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\062\160\170\073\040\155\141" + "\162\147\151\156\072\040\063\160\170\040\066\160\170\073\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\141\154\160\150\141" + "\050\100\141\143\143\145\156\164\137\143\157\154\157\162\054\060" + "\056\065\051\073\040\175\012\012\164\141\142\142\141\162\040\164" + "\141\142\040\173\040\164\162\141\156\163\151\164\151\157\156\072" + "\040\142\141\143\153\147\162\157\165\156\144\040\061\065\060\155" + "\163\040\145\141\163\145\055\151\156\055\157\165\164\073\040\175" + "\012\012\164\141\142\142\141\162\040\164\141\142\072\163\145\154" + "\145\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056\061" + "\051\073\040\175\012\012\164\141\142\142\141\162\040\164\141\142" + "\072\163\145\154\145\143\164\145\144\072\150\157\166\145\162\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\061\063\051\073\040\175\012" + "\012\164\141\142\142\141\162\040\164\141\142\072\163\145\154\145" + "\143\164\145\144\072\141\143\164\151\166\145\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154" + "\157\162\054\060\056\061\071\051\073\040\175\012\012\164\141\142" + "\142\141\162\040\164\141\142\072\150\157\166\145\162\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\060\067\051\073\040\175\012\012\164" + "\141\142\142\141\162\040\164\141\142\072\141\143\164\151\166\145" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145" + "\156\164\103\157\154\157\162\054\060\056\061\066\051\073\040\175" + "\012\012\164\141\142\142\141\162\040\164\141\142\142\157\170\056" + "\163\151\156\147\154\145\055\164\141\142\040\164\141\142\054\040" + "\164\141\142\142\141\162\040\164\141\142\142\157\170\056\163\151" + "\156\147\154\145\055\164\141\142\040\164\141\142\072\150\157\166" + "\145\162\054\040\164\141\142\142\141\162\040\164\141\142\142\157" + "\170\056\163\151\156\147\154\145\055\164\141\142\040\164\141\142" + "\072\141\143\164\151\166\145\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\156\157\156\145\073\040\175\012\012\164" + "\141\142\142\141\162\040\056\163\164\141\162\164\055\141\143\164" + "\151\157\156\054\040\164\141\142\142\141\162\040\056\145\156\144" + "\055\141\143\164\151\157\156\040\173\040\160\141\144\144\151\156" + "\147\072\040\066\160\170\040\065\160\170\073\040\175\012\012\164" + "\141\142\142\141\162\040\056\163\164\141\162\164\055\141\143\164" + "\151\157\156\072\144\151\162\050\154\164\162\051\054\040\164\141" + "\142\142\141\162\040\056\145\156\144\055\141\143\164\151\157\156" + "\072\144\151\162\050\162\164\154\051\040\173\040\160\141\144\144" + "\151\156\147\055\162\151\147\150\164\072\040\060\073\040\175\012" + "\012\164\141\142\142\141\162\040\056\163\164\141\162\164\055\141" + "\143\164\151\157\156\072\144\151\162\050\162\164\154\051\054\040" + "\164\141\142\142\141\162\040\056\145\156\144\055\141\143\164\151" + "\157\156\072\144\151\162\050\154\164\162\051\040\173\040\160\141" + "\144\144\151\156\147\055\154\145\146\164\072\040\060\073\040\175" + "\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\164\157\160\055\142\141\162\040\164\141\142\142\141\162\040" + "\056\142\157\170\054\040\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\142\157\164\164\157\155\055\142\141\162\040" + "\164\141\142\142\141\162\040\056\142\157\170\054\040\164\141\142" + "\142\141\162\056\151\156\154\151\156\145\040\056\142\157\170\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\143\157\154\157\162\072\040\151\156\150\145\162\151\164\073" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\156\157\156" + "\145\073\040\160\141\144\144\151\156\147\055\142\157\164\164\157" + "\155\072\040\060\073\040\175\012\012\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162\040" + "\164\141\142\142\141\162\040\056\142\157\170\072\142\141\143\153" + "\144\162\157\160\054\040\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\142\157\164\164\157\155\055\142\141\162\040" + "\164\141\142\142\141\162\040\056\142\157\170\072\142\141\143\153" + "\144\162\157\160\054\040\164\141\142\142\141\162\056\151\156\154" + "\151\156\145\040\056\142\157\170\072\142\141\143\153\144\162\157" + "\160\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\164\162\141\156\163\160\141\162\145\156" + "\164\073\040\164\162\141\156\163\151\164\151\157\156\072\040\156" + "\157\156\145\073\040\175\012\012\164\157\157\154\142\141\162\166" + "\151\145\167\040\076\040\056\164\157\160\055\142\141\162\040\164" + "\141\142\142\141\162\040\056\142\157\170\072\142\141\143\153\144" + "\162\157\160\040\076\040\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\054\040\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\142\157\164\164\157\155\055\142\141\162\040" + "\164\141\142\142\141\162\040\056\142\157\170\072\142\141\143\153" + "\144\162\157\160\040\076\040\163\143\162\157\154\154\145\144\167" + "\151\156\144\157\167\054\040\164\141\142\142\141\162\056\151\156" + "\154\151\156\145\040\056\142\157\170\072\142\141\143\153\144\162" + "\157\160\040\076\040\163\143\162\157\154\154\145\144\167\151\156" + "\144\157\167\054\040\164\157\157\154\142\141\162\166\151\145\167" + "\040\076\040\056\164\157\160\055\142\141\162\040\164\141\142\142" + "\141\162\040\056\142\157\170\072\142\141\143\153\144\162\157\160" + "\040\076\040\056\163\164\141\162\164\055\141\143\164\151\157\156" + "\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\142\157\164\164\157\155\055\142\141\162\040\164\141\142\142" + "\141\162\040\056\142\157\170\072\142\141\143\153\144\162\157\160" + "\040\076\040\056\163\164\141\162\164\055\141\143\164\151\157\156" + "\054\040\164\141\142\142\141\162\056\151\156\154\151\156\145\040" + "\056\142\157\170\072\142\141\143\153\144\162\157\160\040\076\040" + "\056\163\164\141\162\164\055\141\143\164\151\157\156\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\040\164\141\142\142\141\162\040\056\142\157" + "\170\072\142\141\143\153\144\162\157\160\040\076\040\056\145\156" + "\144\055\141\143\164\151\157\156\054\040\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055" + "\142\141\162\040\164\141\142\142\141\162\040\056\142\157\170\072" + "\142\141\143\153\144\162\157\160\040\076\040\056\145\156\144\055" + "\141\143\164\151\157\156\054\040\164\141\142\142\141\162\056\151" + "\156\154\151\156\145\040\056\142\157\170\072\142\141\143\153\144" + "\162\157\160\040\076\040\056\145\156\144\055\141\143\164\151\157" + "\156\040\173\040\146\151\154\164\145\162\072\040\156\157\156\145" + "\073\040\164\162\141\156\163\151\164\151\157\156\072\040\156\157" + "\156\145\073\040\175\012\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\056\143" + "\157\154\154\141\160\163\145\055\163\160\141\143\151\156\147\040" + "\164\141\142\142\141\162\040\164\141\142\142\157\170\054\040\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\142\157" + "\164\164\157\155\055\142\141\162\040\056\143\157\154\154\141\160" + "\163\145\055\163\160\141\143\151\156\147\040\164\141\142\142\141" + "\162\040\164\141\142\142\157\170\054\040\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162" + "\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143\151" + "\156\147\040\164\141\142\142\141\162\040\056\163\164\141\162\164" + "\055\141\143\164\151\157\156\054\040\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142" + "\141\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141" + "\143\151\156\147\040\164\141\142\142\141\162\040\056\163\164\141" + "\162\164\055\141\143\164\151\157\156\054\040\164\157\157\154\142" + "\141\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141" + "\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143" + "\151\156\147\040\164\141\142\142\141\162\040\056\145\156\144\055" + "\141\143\164\151\157\156\054\040\164\157\157\154\142\141\162\166" + "\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142\141" + "\162\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143" + "\151\156\147\040\164\141\142\142\141\162\040\056\145\156\144\055" + "\141\143\164\151\157\156\040\173\040\160\141\144\144\151\156\147" + "\055\164\157\160\072\040\063\160\170\073\040\160\141\144\144\151" + "\156\147\055\142\157\164\164\157\155\072\040\063\160\170\073\040" + "\175\012\012\144\156\144\040\164\141\142\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\150\145\141\144\145\162\142\141\162\137\142\147\137\143\157\154" + "\157\162\073\040\142\141\143\153\147\162\157\165\156\144\055\151" + "\155\141\147\145\072\040\151\155\141\147\145\050\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\071\051\051\073\040\143\157\154\157\162\072\040\100\150" + "\145\141\144\145\162\142\141\162\137\146\147\137\143\157\154\157" + "\162\073\040\142\157\170\055\163\150\141\144\157\167\072\040\060" + "\040\060\040\060\040\061\160\170\040\162\147\142\141\050\060\054" + "\040\060\054\040\060\054\040\060\056\060\063\051\054\040\060\040" + "\061\160\170\040\063\160\170\040\061\160\170\040\162\147\142\141" + "\050\060\054\040\060\054\040\060\054\040\060\056\060\067\051\054" + "\040\060\040\062\160\170\040\066\160\170\040\062\160\170\040\162" + "\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056\060" + "\063\051\073\040\155\141\162\147\151\156\072\040\062\065\160\170" + "\073\040\175\012\012\164\141\142\142\141\162\040\164\141\142\054" + "\040\144\156\144\040\164\141\142\040\173\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\062\066\160\170\073\040\160\141\144" + "\144\151\156\147\072\040\064\160\170\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\066\160\170\073\040\175" + "\012\012\164\141\142\142\141\162\040\164\141\142\040\142\165\164" + "\164\157\156\056\151\155\141\147\145\055\142\165\164\164\157\156" + "\054\040\144\156\144\040\164\141\142\040\142\165\164\164\157\156" + "\056\151\155\141\147\145\055\142\165\164\164\157\156\040\173\040" + "\160\141\144\144\151\156\147\072\040\060\073\040\155\141\162\147" + "\151\156\072\040\060\073\040\155\151\156\055\167\151\144\164\150" + "\072\040\062\064\160\170\073\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\062\064\160\170\073\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\071\071\160\170\073\040\175" + "\012\012\164\141\142\142\141\162\040\164\141\142\040\151\156\144" + "\151\143\141\164\157\162\054\040\144\156\144\040\164\141\142\040" + "\151\156\144\151\143\141\164\157\162\040\173\040\155\151\156\055" + "\150\145\151\147\150\164\072\040\062\160\170\073\040\142\157\162" + "\144\145\162\055\162\141\144\151\165\163\072\040\062\160\170\073" + "\040\142\141\143\153\147\162\157\165\156\144\072\040\141\154\160" + "\150\141\050\100\141\143\143\145\156\164\137\143\157\154\157\162" + "\054\060\056\065\051\073\040\164\162\141\156\163\146\157\162\155" + "\072\040\164\162\141\156\163\154\141\164\145\131\050\064\160\170" + "\051\073\040\175\012\012\164\141\142\147\162\151\144\040\076\040" + "\164\141\142\147\162\151\144\143\150\151\154\144\040\056\143\141" + "\162\144\040\173\040\157\165\164\154\151\156\145\072\040\060\040" + "\163\157\154\151\144\040\164\162\141\156\163\160\141\162\145\156" + "\164\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145" + "\164\072\040\064\160\170\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\040\062\060\060\155\163\040\143\165\142\151\143\055\142\145" + "\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066\054" + "\040\060\056\064\065\054\040\060\056\071\064\051\054\040\157\165" + "\164\154\151\156\145\055\167\151\144\164\150\040\062\060\060\155" + "\163\040\143\165\142\151\143\055\142\145\172\151\145\162\050\060" + "\056\062\065\054\040\060\056\064\066\054\040\060\056\064\065\054" + "\040\060\056\071\064\051\054\040\157\165\164\154\151\156\145\055" + "\157\146\146\163\145\164\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\073\040\175\012\012\164\141\142\147\162\151\144\040\076\040" + "\164\141\142\147\162\151\144\143\150\151\154\144\072\146\157\143" + "\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154\145" + "\040\056\143\141\162\144\040\173\040\157\165\164\154\151\156\145" + "\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100\141" + "\143\143\145\156\164\137\143\157\154\157\162\054\060\056\065\051" + "\073\040\157\165\164\154\151\156\145\055\167\151\144\164\150\072" + "\040\062\160\170\073\040\157\165\164\154\151\156\145\055\157\146" + "\146\163\145\164\072\040\060\073\040\175\012\012\164\141\142\164" + "\150\165\155\142\156\141\151\154\040\173\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\061\066\160\170\073\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\142\157\170\055" + "\163\150\141\144\157\167\040\062\060\060\155\163\040\143\165\142" + "\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054\040" + "\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071\064" + "\051\054\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\073\040\175\012\012\164\141\142" + "\164\150\165\155\142\156\141\151\154\040\076\040\142\157\170\040" + "\173\040\155\141\162\147\151\156\072\040\066\160\170\073\040\175" + "\012\012\164\141\142\164\150\165\155\142\156\141\151\154\072\144" + "\162\157\160\050\141\143\164\151\166\145\051\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040" + "\060\040\060\040\060\040\062\160\170\040\141\154\160\150\141\050" + "\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162" + "\054\060\056\064\051\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100" + "\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162\054" + "\060\056\061\051\073\040\175\012\012\164\141\142\164\150\165\155" + "\142\156\141\151\154\040\056\156\145\145\144\163\055\141\164\164" + "\145\156\164\151\157\156\072\144\151\162\050\154\164\162\051\040" + "\173\040\164\162\141\156\163\146\157\162\155\072\040\164\162\141" + "\156\163\154\141\164\145\050\070\160\170\054\040\055\070\160\170" + "\051\073\040\175\012\012\164\141\142\164\150\165\155\142\156\141" + "\151\154\040\056\156\145\145\144\163\055\141\164\164\145\156\164" + "\151\157\156\072\144\151\162\050\162\164\154\051\040\173\040\164" + "\162\141\156\163\146\157\162\155\072\040\164\162\141\156\163\154" + "\141\164\145\050\055\070\160\170\054\040\055\070\160\170\051\073" + "\040\175\012\012\164\141\142\164\150\165\155\142\156\141\151\154" + "\040\056\156\145\145\144\163\055\141\164\164\145\156\164\151\157" + "\156\040\076\040\167\151\144\147\145\164\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\072\040\100\141\143\143\145\156\164" + "\137\143\157\154\157\162\073\040\155\151\156\055\167\151\144\164" + "\150\072\040\061\062\160\170\073\040\155\151\156\055\150\145\151" + "\147\150\164\072\040\061\062\160\170\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\070\160\170\073\040\155" + "\141\162\147\151\156\072\040\063\160\170\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\060\040\061\160\170\040\062\160" + "\170\040\141\154\160\150\141\050\100\141\143\143\145\156\164\137" + "\143\157\154\157\162\054\060\056\064\051\073\040\175\012\012\164" + "\141\142\164\150\165\155\142\156\141\151\154\040\056\143\141\162" + "\144\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040" + "\156\157\156\145\073\040\143\157\154\157\162\072\040\151\156\150" + "\145\162\151\164\073\040\175\012\012\164\141\142\164\150\165\155" + "\142\156\141\151\154\040\056\143\141\162\144\040\160\151\143\164" + "\165\162\145\040\173\040\157\165\164\154\151\156\145\072\040\061" + "\160\170\040\163\157\154\151\144\040\162\147\142\141\050\062\065" + "\065\054\040\062\065\065\054\040\062\065\065\054\040\060\056\060" + "\067\051\073\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\072\040\055\061\160\170\073\040\142\157\162\144\145\162" + "\055\162\141\144\151\165\163\072\040\061\062\160\170\073\040\175" + "\012\012\164\141\142\164\150\165\155\142\156\141\151\154\056\160" + "\151\156\156\145\144\040\056\143\141\162\144\040\173\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040" + "\100\164\150\165\155\142\156\141\151\154\137\142\147\137\143\157" + "\154\157\162\073\040\143\157\154\157\162\072\040\100\164\150\165" + "\155\142\156\141\151\154\137\146\147\137\143\157\154\157\162\073" + "\040\175\012\012\164\141\142\164\150\165\155\142\156\141\151\154" + "\040\056\151\143\157\156\055\164\151\164\154\145\055\142\157\170" + "\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156" + "\147\072\040\066\160\170\073\040\175\012\012\164\141\142\164\150" + "\165\155\142\156\141\151\154\040\056\164\141\142\055\165\156\160" + "\151\156\055\151\143\157\156\040\173\040\155\141\162\147\151\156" + "\072\040\066\160\170\073\040\155\151\156\055\167\151\144\164\150" + "\072\040\062\064\160\170\073\040\155\151\156\055\150\145\151\147" + "\150\164\072\040\062\064\160\170\073\040\175\012\012\164\141\142" + "\164\150\165\155\142\156\141\151\154\040\142\165\164\164\157\156" + "\056\143\151\162\143\165\154\141\162\040\173\040\155\141\162\147" + "\151\156\072\040\066\160\170\073\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\100\164\150\165\155\142\156\141\151\154\137\142\147\137\143" + "\157\154\157\162\054\060\056\067\065\051\073\040\155\151\156\055" + "\167\151\144\164\150\072\040\062\064\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\062\064\160\170\073\040\175" + "\012\012\164\141\142\164\150\165\155\142\156\141\151\154\040\142" + "\165\164\164\157\156\056\143\151\162\143\165\154\141\162\072\150" + "\157\166\145\162\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\155" + "\151\170\050\100\164\150\165\155\142\156\141\151\154\137\142\147" + "\137\143\157\154\157\162\054\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\051\054\060\056\067\065\051\073\040" + "\175\012\012\164\141\142\164\150\165\155\142\156\141\151\154\040" + "\142\165\164\164\157\156\056\143\151\162\143\165\154\141\162\072" + "\141\143\164\151\166\145\040\173\040\142\141\143\153\147\162\157" + "\165\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141" + "\050\155\151\170\050\100\164\150\165\155\142\156\141\151\154\137" + "\142\147\137\143\157\154\157\162\054\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\062\051\054\060\056\067\065\051" + "\073\040\175\012\012\164\141\142\157\166\145\162\166\151\145\167" + "\040\076\040\056\157\166\145\162\166\151\145\167\040\056\156\145" + "\167\055\164\141\142\055\142\165\164\164\157\156\040\173\040\155" + "\141\162\147\151\156\072\040\061\070\160\170\073\040\175\012\012" + "\164\141\142\166\151\145\167\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\054\040\164\141\142\142\157\170\072\144\162\157" + "\160\050\141\143\164\151\166\145\051\054\040\164\141\142\147\162" + "\151\144\072\144\162\157\160\050\141\143\164\151\166\145\051\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\156\157" + "\156\145\073\040\175\012\012\143\165\162\163\157\162\055\150\141" + "\156\144\154\145\040\173\040\141\154\154\072\040\165\156\163\145" + "\164\073\040\160\141\144\144\151\156\147\072\040\062\064\160\170" + "\040\062\060\160\170\073\040\175\012\012\143\165\162\163\157\162" + "\055\150\141\156\144\154\145\040\076\040\143\157\156\164\145\156" + "\164\163\040\173\040\155\151\156\055\167\151\144\164\150\072\040" + "\062\060\160\170\073\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\062\060\160\170\073\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\065\060\045\073\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073\040" + "\175\012\012\143\165\162\163\157\162\055\150\141\156\144\154\145" + "\056\164\157\160\040\076\040\143\157\156\164\145\156\164\163\040" + "\173\040\142\157\162\144\145\162\055\164\157\160\055\162\151\147" + "\150\164\055\162\141\144\151\165\163\072\040\060\073\040\175\012" + "\012\143\165\162\163\157\162\055\150\141\156\144\154\145\056\142" + "\157\164\164\157\155\040\076\040\143\157\156\164\145\156\164\163" + "\040\173\040\142\157\162\144\145\162\055\164\157\160\055\154\145" + "\146\164\055\162\141\144\151\165\163\072\040\060\073\040\164\162" + "\141\156\163\146\157\162\155\072\040\164\162\141\156\163\154\141" + "\164\145\130\050\061\160\170\051\073\040\175\012\012\143\165\162" + "\163\157\162\055\150\141\156\144\154\145\056\151\156\163\145\162" + "\164\151\157\156\055\143\165\162\163\157\162\040\076\040\143\157" + "\156\164\145\156\164\163\040\173\040\142\157\162\144\145\162\055" + "\164\157\160\055\154\145\146\164\055\162\141\144\151\165\163\072" + "\040\060\073\040\164\162\141\156\163\146\157\162\155\072\040\164" + "\162\141\156\163\154\141\164\145\130\050\061\160\170\051\040\164" + "\162\141\156\163\154\141\164\145\131\050\064\160\170\051\040\162" + "\157\164\141\164\145\050\064\065\144\145\147\051\073\040\175\012" + "\012\155\141\147\156\151\146\151\145\162\040\173\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\100" + "\166\151\145\167\137\142\147\137\143\157\154\157\162\073\040\175" + "\012\012\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\056\157\163\144" + "\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\072\146\157\143\165\163\072\146\157\143\165\163\055\166\151" + "\163\151\142\154\145\054\040\163\145\141\162\143\150\142\141\162" + "\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157" + "\170\056\157\163\144\040\142\165\164\164\157\156\072\156\157\164" + "\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056\163" + "\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151\166" + "\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056\157" + "\160\141\161\165\145\051\072\146\157\143\165\163\072\146\157\143" + "\165\163\055\166\151\163\151\142\154\145\054\040\056\157\163\144" + "\056\164\157\157\154\142\141\162\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\072\146\157\143\165\163\072" + "\146\157\143\165\163\055\166\151\163\151\142\154\145\054\040\150" + "\145\141\144\145\162\142\141\162\056\157\163\144\040\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\072\146\157" + "\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142\154" + "\145\040\173\040\157\165\164\154\151\156\145\055\143\157\154\157" + "\162\072\040\162\147\142\141\050\062\065\065\054\040\062\065\065" + "\054\040\062\065\065\054\040\060\056\065\051\073\040\175\012\012" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\040\155\145\156\165\142" + "\165\164\164\157\156\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\056\164\157\157\154\142\141\162\040\155" + "\145\156\165\142\165\164\164\157\156\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\040\076\040\142\165\164" + "\164\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051" + "\072\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163" + "\164\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051" + "\072\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150" + "\145\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164" + "\164\157\156\056\163\165\147\147\145\163\164\145\144\055\141\143" + "\164\151\157\156\040\076\040\142\165\164\164\157\156\072\156\157" + "\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050\056" + "\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157\156" + "\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050\056" + "\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056\144" + "\145\163\164\162\165\143\164\151\166\145\055\141\143\164\151\157" + "\156\040\076\040\142\165\164\164\157\156\072\156\157\164\050\056" + "\162\141\151\163\145\144\051\072\156\157\164\050\056\163\165\147" + "\147\145\163\164\145\144\055\141\143\164\151\157\156\051\072\156" + "\157\164\050\056\144\145\163\164\162\165\143\164\151\166\145\055" + "\141\143\164\151\157\156\051\072\156\157\164\050\056\157\160\141" + "\161\165\145\051\054\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\155\145\156\165\142\165\164\164\157\156\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\040\076" + "\040\142\165\164\164\157\156\072\156\157\164\050\056\162\141\151" + "\163\145\144\051\072\156\157\164\050\056\163\165\147\147\145\163" + "\164\145\144\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\144\145\163\164\162\165\143\164\151\166\145\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\157\160\141\161\165\145" + "\051\054\040\056\164\157\157\154\142\141\162\040\155\145\156\165" + "\142\165\164\164\157\156\056\144\145\163\164\162\165\143\164\151" + "\166\145\055\141\143\164\151\157\156\040\076\040\142\165\164\164" + "\157\156\072\156\157\164\050\056\162\141\151\163\145\144\051\072" + "\156\157\164\050\056\163\165\147\147\145\163\164\145\144\055\141" + "\143\164\151\157\156\051\072\156\157\164\050\056\144\145\163\164" + "\162\165\143\164\151\166\145\055\141\143\164\151\157\156\051\072" + "\156\157\164\050\056\157\160\141\161\165\145\051\054\040\150\145" + "\141\144\145\162\142\141\162\040\155\145\156\165\142\165\164\164" + "\157\156\056\144\145\163\164\162\165\143\164\151\166\145\055\141" + "\143\164\151\157\156\040\076\040\142\165\164\164\157\156\072\156" + "\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164\050" + "\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151\157" + "\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143\164" + "\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164\050" + "\056\157\160\141\161\165\145\051\054\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\040\155\145\156\165\142\165\164\164\157\156" + "\056\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156" + "\072\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157" + "\164\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164" + "\151\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165" + "\143\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157" + "\164\050\056\157\160\141\161\165\145\051\054\040\056\164\157\157" + "\154\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\054\040\150\145\141\144\145" + "\162\142\141\162\040\155\145\156\165\142\165\164\164\157\156\056" + "\157\160\141\161\165\145\040\076\040\142\165\164\164\157\156\072" + "\156\157\164\050\056\162\141\151\163\145\144\051\072\156\157\164" + "\050\056\163\165\147\147\145\163\164\145\144\055\141\143\164\151" + "\157\156\051\072\156\157\164\050\056\144\145\163\164\162\165\143" + "\164\151\166\145\055\141\143\164\151\157\156\051\072\156\157\164" + "\050\056\157\160\141\161\165\145\051\040\173\040\143\157\154\157" + "\162\072\040\151\156\150\145\162\151\164\073\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\072\040\164\162" + "\141\156\163\160\141\162\145\156\164\073\040\175\012\012\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\163\167\151\164\143\150\054" + "\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\040\163\167\151\164" + "\143\150\054\040\056\164\157\157\154\142\141\162\040\163\167\151" + "\164\143\150\054\040\150\145\141\144\145\162\142\141\162\040\163" + "\167\151\164\143\150\040\173\040\155\141\162\147\151\156\055\164" + "\157\160\072\040\064\160\170\073\040\155\141\162\147\151\156\055" + "\142\157\164\164\157\155\072\040\064\160\170\073\040\175\012\012" + "\056\164\157\157\154\142\141\162\040\173\040\160\141\144\144\151" + "\156\147\072\040\066\160\170\073\040\142\157\162\144\145\162\055" + "\163\160\141\143\151\156\147\072\040\066\160\170\073\040\175\012" + "\012\056\164\157\157\154\142\141\162\056\157\163\144\040\173\040" + "\160\141\144\144\151\156\147\072\040\061\062\160\170\073\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\061\062" + "\160\170\073\040\175\012\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\056\143" + "\157\154\154\141\160\163\145\055\163\160\141\143\151\156\147\040" + "\056\164\157\157\154\142\141\162\054\040\164\157\157\154\142\141" + "\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055" + "\142\141\162\040\056\143\157\154\154\141\160\163\145\055\163\160" + "\141\143\151\156\147\040\056\164\157\157\154\142\141\162\040\173" + "\040\160\141\144\144\151\156\147\055\164\157\160\072\040\063\160" + "\170\073\040\160\141\144\144\151\156\147\055\142\157\164\164\157" + "\155\072\040\063\160\170\073\040\175\012\012\057\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\040\107\164\153" + "\123\145\141\162\143\150\102\141\162\040\052\040\052\057\012\163" + "\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\142\157\170\040\173\040\160\141\144\144" + "\151\156\147\072\040\066\160\170\040\066\160\170\040\067\160\170" + "\040\066\160\170\073\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\100\150\145\141\144\145\162\142" + "\141\162\137\142\147\137\143\157\154\157\162\073\040\143\157\154" + "\157\162\072\040\100\150\145\141\144\145\162\142\141\162\137\146" + "\147\137\143\157\154\157\162\073\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\151\156\163\145\164\040\060\040\055\061\160" + "\170\040\100\150\145\141\144\145\162\142\141\162\137\163\150\141" + "\144\145\137\143\157\154\157\162\073\040\175\012\012\163\145\141" + "\162\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\072\142\141\143\153\144\162\157\160" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\100\150\145\141\144\145\162\142\141\162\137" + "\142\141\143\153\144\162\157\160\137\143\157\154\157\162\073\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\040\062\060\060" + "\155\163\040\145\141\163\145\055\157\165\164\073\040\175\012\012" + "\163\145\141\162\143\150\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\072\142\141\143\153\144" + "\162\157\160\040\076\040\052\040\173\040\146\151\154\164\145\162" + "\072\040\157\160\141\143\151\164\171\050\060\056\065\051\073\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\146\151\154\164" + "\145\162\040\062\060\060\155\163\040\145\141\163\145\055\157\165" + "\164\073\040\175\012\012\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\056\143\154\157\163\145\040\173\040\155\151\156\055\167\151" + "\144\164\150\072\040\061\070\160\170\073\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\061\070\160\170\073\040\160\141\144" + "\144\151\156\147\072\040\064\160\170\073\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\065\060\045\073\040\175" + "\012\012\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\056\143\154" + "\157\163\145\072\144\151\162\050\154\164\162\051\040\173\040\155" + "\141\162\147\151\156\055\154\145\146\164\072\040\061\060\160\170" + "\073\040\155\141\162\147\151\156\055\162\151\147\150\164\072\040" + "\064\160\170\073\040\175\012\012\163\145\141\162\143\150\142\141" + "\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040\142" + "\157\170\040\056\143\154\157\163\145\072\144\151\162\050\162\164" + "\154\051\040\173\040\155\141\162\147\151\156\055\154\145\146\164" + "\072\040\064\160\170\073\040\155\141\162\147\151\156\055\162\151" + "\147\150\164\072\040\061\060\160\170\073\040\175\012\012\164\157" + "\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157\160" + "\055\142\141\162\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\054" + "\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056" + "\142\157\164\164\157\155\055\142\141\162\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\054\040\163\145\141\162\143\150\142\141\162" + "\056\151\156\154\151\156\145\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\054\040\167\151\156\144\157\167" + "\056\141\160\160\143\150\157\157\163\145\162\040\163\145\141\162" + "\143\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\054\040\167\151\156\144\157\167\056\163" + "\150\157\162\164\143\165\164\163\040\163\145\141\162\143\150\142" + "\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076\040" + "\142\157\170\040\173\040\142\141\143\153\147\162\157\165\156\144" + "\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141\162" + "\145\156\164\073\040\143\157\154\157\162\072\040\151\156\150\145" + "\162\151\164\073\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\156\157\156\145\073\040\160\141\144\144\151\156\147\055\142" + "\157\164\164\157\155\072\040\066\160\170\073\040\175\012\012\164" + "\157\157\154\142\141\162\166\151\145\167\040\076\040\056\164\157" + "\160\055\142\141\162\040\163\145\141\162\143\150\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\072\142\141\143\153\144\162\157\160\054\040\164\157\157\154\142" + "\141\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155" + "\055\142\141\162\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\072" + "\142\141\143\153\144\162\157\160\054\040\163\145\141\162\143\150" + "\142\141\162\056\151\156\154\151\156\145\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\142\157\170\072\142\141\143\153" + "\144\162\157\160\040\173\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\164\162\141\156\163\160\141" + "\162\145\156\164\073\040\164\162\141\156\163\151\164\151\157\156" + "\072\040\156\157\156\145\073\040\175\012\012\164\157\157\154\142" + "\141\162\166\151\145\167\040\076\040\056\164\157\160\055\142\141" + "\162\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\072\142\141\143" + "\153\144\162\157\160\040\076\040\052\054\040\164\157\157\154\142" + "\141\162\166\151\145\167\040\076\040\056\142\157\164\164\157\155" + "\055\142\141\162\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\072" + "\142\141\143\153\144\162\157\160\040\076\040\052\054\040\163\145" + "\141\162\143\150\142\141\162\056\151\156\154\151\156\145\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\072" + "\142\141\143\153\144\162\157\160\040\076\040\052\040\173\040\146" + "\151\154\164\145\162\072\040\156\157\156\145\073\040\164\162\141" + "\156\163\151\164\151\157\156\072\040\156\157\156\145\073\040\175" + "\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\164\157\160\055\142\141\162\040\056\143\157\154\154\141\160" + "\163\145\055\163\160\141\143\151\156\147\040\163\145\141\162\143" + "\150\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040" + "\076\040\142\157\170\054\040\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\142\157\164\164\157\155\055\142\141\162" + "\040\056\143\157\154\154\141\160\163\145\055\163\160\141\143\151" + "\156\147\040\163\145\141\162\143\150\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\054\040\167" + "\151\156\144\157\167\056\141\160\160\143\150\157\157\163\145\162" + "\056\143\163\144\040\163\145\141\162\143\150\142\141\162\040\076" + "\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170\054" + "\040\167\151\156\144\157\167\056\163\150\157\162\164\143\165\164" + "\163\040\163\145\141\162\143\150\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\173\040\160" + "\141\144\144\151\156\147\055\164\157\160\072\040\063\160\170\073" + "\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072" + "\040\063\160\170\073\040\175\012\012\057\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\040\107\164\153\101\143" + "\164\151\157\156\102\141\162\040\052\040\052\057\012\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\100\150\145\141" + "\144\145\162\142\141\162\137\142\147\137\143\157\154\157\162\073" + "\040\143\157\154\157\162\072\040\100\150\145\141\144\145\162\142" + "\141\162\137\146\147\137\143\157\154\157\162\073\040\142\157\170" + "\055\163\150\141\144\157\167\072\040\151\156\163\145\164\040\060" + "\040\061\160\170\040\100\150\145\141\144\145\162\142\141\162\137" + "\163\150\141\144\145\137\143\157\154\157\162\073\040\160\141\144" + "\144\151\156\147\072\040\067\160\170\040\066\160\170\040\066\160" + "\170\040\066\160\170\073\040\175\012\012\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\054\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\040\076\040\142\157\170\056\163\164\141\162\164\054\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\076\040\142\157\170\056\145" + "\156\144\040\173\040\142\157\162\144\145\162\055\163\160\141\143" + "\151\156\147\072\040\066\160\170\073\040\175\012\012\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\072\142\141\143\153\144\162\157\160" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\072\040\100\150\145\141\144\145\162\142\141\162\137" + "\142\141\143\153\144\162\157\160\137\143\157\154\157\162\073\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\142\141\143\153" + "\147\162\157\165\156\144\055\143\157\154\157\162\040\062\060\060" + "\155\163\040\145\141\163\145\055\157\165\164\073\040\175\012\012" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\072\142\141\143\153\144" + "\162\157\160\040\076\040\052\040\173\040\146\151\154\164\145\162" + "\072\040\157\160\141\143\151\164\171\050\060\056\065\051\073\040" + "\164\162\141\156\163\151\164\151\157\156\072\040\146\151\154\164" + "\145\162\040\062\060\060\155\163\040\145\141\163\145\055\157\165" + "\164\073\040\175\012\012\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\164\157\160\055\142\141\162\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\054\040\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142" + "\141\162\040\141\143\164\151\157\156\142\141\162\040\076\040\162" + "\145\166\145\141\154\145\162\040\076\040\142\157\170\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\164\162\141\156\163\160\141\162\145\156\164\073\040\143" + "\157\154\157\162\072\040\151\156\150\145\162\151\164\073\040\142" + "\157\170\055\163\150\141\144\157\167\072\040\156\157\156\145\073" + "\040\160\141\144\144\151\156\147\055\164\157\160\072\040\066\160" + "\170\073\040\175\012\012\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\164\157\160\055\142\141\162\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\072\142\141\143\153\144\162\157\160" + "\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\142\157\164\164\157\155\055\142\141\162\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\072\142\141\143\153\144\162\157\160\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\164\162\141\156\163\151\164\151\157\156\072\040\156\157\156" + "\145\073\040\175\012\012\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\164\157\160\055\142\141\162\040\141\143\164" + "\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145" + "\162\040\076\040\142\157\170\072\142\141\143\153\144\162\157\160" + "\040\076\040\052\054\040\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\142\157\164\164\157\155\055\142\141\162\040" + "\141\143\164\151\157\156\142\141\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\142\157\170\072\142\141\143\153\144" + "\162\157\160\040\076\040\052\040\173\040\146\151\154\164\145\162" + "\072\040\156\157\156\145\073\040\164\162\141\156\163\151\164\151" + "\157\156\072\040\156\157\156\145\073\040\175\012\012\164\157\157" + "\154\142\141\162\166\151\145\167\040\076\040\056\164\157\160\055" + "\142\141\162\040\056\143\157\154\154\141\160\163\145\055\163\160" + "\141\143\151\156\147\040\141\143\164\151\157\156\142\141\162\040" + "\076\040\162\145\166\145\141\154\145\162\040\076\040\142\157\170" + "\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\142\157\164\164\157\155\055\142\141\162\040\056\143\157\154" + "\154\141\160\163\145\055\163\160\141\143\151\156\147\040\141\143" + "\164\151\157\156\142\141\162\040\076\040\162\145\166\145\141\154" + "\145\162\040\076\040\142\157\170\040\173\040\160\141\144\144\151" + "\156\147\055\164\157\160\072\040\063\160\170\073\040\160\141\144" + "\144\151\156\147\055\142\157\164\164\157\155\072\040\063\160\170" + "\073\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\040\101\144\167\102\141\156\156\145\162\040\052\040" + "\052\057\012\142\141\156\156\145\162\040\076\040\162\145\166\145" + "\141\154\145\162\040\076\040\167\151\144\147\145\164\040\173\040" + "\057\052\040\124\150\145\162\145\040\141\162\145\040\062\040\155" + "\157\162\145\040\151\156\163\164\141\156\143\145\163\040\151\156" + "\040\137\163\151\144\145\142\141\162\163\056\143\163\163\054\040" + "\153\145\145\160\040\151\156\040\163\171\156\143\040\167\151\164" + "\150\040\164\150\141\164\040\052\057\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\155\151\170\050" + "\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162" + "\054\100\167\151\156\144\157\167\137\142\147\137\143\157\154\157" + "\162\054\060\056\067\051\073\040\143\157\154\157\162\072\040\100" + "\167\151\156\144\157\167\137\146\147\137\143\157\154\157\162\073" + "\040\160\141\144\144\151\156\147\072\040\066\160\170\073\040\175" + "\012\012\142\141\156\156\145\162\040\076\040\162\145\166\145\141" + "\154\145\162\040\076\040\167\151\144\147\145\164\072\142\141\143" + "\153\144\162\157\160\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\155\151\170\050\100\141" + "\143\143\145\156\164\137\142\147\137\143\157\154\157\162\054\100" + "\167\151\156\144\157\167\137\142\147\137\143\157\154\157\162\054" + "\060\056\070\065\051\073\040\164\162\141\156\163\151\164\151\157" + "\156\072\040\142\141\143\153\147\162\157\165\156\144\055\143\157" + "\154\157\162\040\062\060\060\155\163\040\145\141\163\145\055\157" + "\165\164\073\040\175\012\012\142\141\156\156\145\162\040\076\040" + "\162\145\166\145\141\154\145\162\040\076\040\167\151\144\147\145" + "\164\072\142\141\143\153\144\162\157\160\040\076\040\154\141\142" + "\145\154\054\040\142\141\156\156\145\162\040\076\040\162\145\166" + "\145\141\154\145\162\040\076\040\167\151\144\147\145\164\072\142" + "\141\143\153\144\162\157\160\040\076\040\142\165\164\164\157\156" + "\040\173\040\146\151\154\164\145\162\072\040\157\160\141\143\151" + "\164\171\050\060\056\065\051\073\040\164\162\141\156\163\151\164" + "\151\157\156\072\040\146\151\154\164\145\162\040\062\060\060\155" + "\163\040\145\141\163\145\055\157\165\164\073\040\175\012\012\057" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\040\101\144\167\124\157\157\154\142\141\162\126\151\145" + "\167\040\052\040\052\057\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\040\056\143" + "\157\154\154\141\160\163\145\055\163\160\141\143\151\156\147\054" + "\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056" + "\142\157\164\164\157\155\055\142\141\162\040\056\143\157\154\154" + "\141\160\163\145\055\163\160\141\143\151\156\147\040\173\040\160" + "\141\144\144\151\156\147\055\164\157\160\072\040\063\160\170\073" + "\040\160\141\144\144\151\156\147\055\142\157\164\164\157\155\072" + "\040\063\160\170\073\040\175\012\012\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\164\157\160\055\142\141\162\056" + "\162\141\151\163\145\144\054\040\164\157\157\154\142\141\162\166" + "\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142\141" + "\162\056\162\141\151\163\145\144\040\173\040\142\141\143\153\147" + "\162\157\165\156\144\055\143\157\154\157\162\072\040\100\150\145" + "\141\144\145\162\142\141\162\137\142\147\137\143\157\154\157\162" + "\073\040\143\157\154\157\162\072\040\100\150\145\141\144\145\162" + "\142\141\162\137\146\147\137\143\157\154\157\162\073\040\175\012" + "\012\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056" + "\164\157\160\055\142\141\162\056\162\141\151\163\145\144\072\142" + "\141\143\153\144\162\157\160\054\040\164\157\157\154\142\141\162" + "\166\151\145\167\040\076\040\056\142\157\164\164\157\155\055\142" + "\141\162\056\162\141\151\163\145\144\072\142\141\143\153\144\162" + "\157\160\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\100\150\145\141\144\145\162\142\141" + "\162\137\142\141\143\153\144\162\157\160\137\143\157\154\157\162" + "\073\040\164\162\141\156\163\151\164\151\157\156\072\040\142\141" + "\143\153\147\162\157\165\156\144\055\143\157\154\157\162\040\062" + "\060\060\155\163\040\145\141\163\145\055\157\165\164\073\040\175" + "\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\164\157\160\055\142\141\162\072\142\141\143\153\144\162\157" + "\160\040\076\040\167\151\156\144\157\167\150\141\156\144\154\145" + "\054\040\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\142\157\164\164\157\155\055\142\141\162\072\142\141\143\153" + "\144\162\157\160\040\076\040\167\151\156\144\157\167\150\141\156" + "\144\154\145\040\173\040\146\151\154\164\145\162\072\040\157\160" + "\141\143\151\164\171\050\060\056\065\051\073\040\164\162\141\156" + "\163\151\164\151\157\156\072\040\146\151\154\164\145\162\040\062" + "\060\060\155\163\040\145\141\163\145\055\157\165\164\073\040\175" + "\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\164\157\160\055\142\141\162\056\162\141\151\163\145\144\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\060\040" + "\061\160\170\040\141\154\160\150\141\050\100\150\145\141\144\145" + "\162\142\141\162\137\163\150\141\144\145\137\143\157\154\157\162" + "\054\060\056\065\051\054\040\060\040\062\160\170\040\064\160\170" + "\040\141\154\160\150\141\050\100\150\145\141\144\145\162\142\141" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\054\060\056" + "\065\051\073\040\175\012\012\164\157\157\154\142\141\162\166\151" + "\145\167\040\076\040\056\164\157\160\055\142\141\162\056\162\141" + "\151\163\145\144\056\142\157\162\144\145\162\040\173\040\142\157" + "\170\055\163\150\141\144\157\167\072\040\060\040\061\160\170\040" + "\100\150\145\141\144\145\162\142\141\162\137\144\141\162\153\145" + "\162\137\163\150\141\144\145\137\143\157\154\157\162\073\040\175" + "\012\012\164\157\157\154\142\141\162\166\151\145\167\040\076\040" + "\056\142\157\164\164\157\155\055\142\141\162\056\162\141\151\163" + "\145\144\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\060\040\055\061\160\170\040\141\154\160\150\141\050\100\150" + "\145\141\144\145\162\142\141\162\137\163\150\141\144\145\137\143" + "\157\154\157\162\054\060\056\065\051\054\040\060\040\055\062\160" + "\170\040\064\160\170\040\141\154\160\150\141\050\100\150\145\141" + "\144\145\162\142\141\162\137\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\065\051\073\040\175\012\012\164\157\157\154" + "\142\141\162\166\151\145\167\040\076\040\056\142\157\164\164\157" + "\155\055\142\141\162\056\162\141\151\163\145\144\056\142\157\162" + "\144\145\162\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\060\040\055\061\160\170\040\100\150\145\141\144\145\162" + "\142\141\162\137\144\141\162\153\145\162\137\163\150\141\144\145" + "\137\143\157\154\157\162\073\040\175\012\012\164\157\157\154\142" + "\141\162\166\151\145\167\056\165\156\144\145\162\163\150\157\157" + "\164\055\164\157\160\040\163\143\162\157\154\154\145\144\167\151" + "\156\144\157\167\040\076\040\165\156\144\145\162\163\150\157\157" + "\164\056\164\157\160\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\151\156\163\145\164\040\060\040\061\160\170\040" + "\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157\154" + "\157\162\054\060\056\067\065\051\073\040\142\141\143\153\147\162" + "\157\165\156\144\072\040\154\151\156\145\141\162\055\147\162\141" + "\144\151\145\156\164\050\164\157\040\142\157\164\164\157\155\054" + "\040\141\154\160\150\141\050\100\163\150\141\144\145\137\143\157" + "\154\157\162\054\060\056\067\065\051\054\040\164\162\141\156\163" + "\160\141\162\145\156\164\040\064\160\170\051\073\040\175\012\012" + "\164\157\157\154\142\141\162\166\151\145\167\056\165\156\144\145" + "\162\163\150\157\157\164\055\142\157\164\164\157\155\040\163\143" + "\162\157\154\154\145\144\167\151\156\144\157\167\040\076\040\165" + "\156\144\145\162\163\150\157\157\164\056\142\157\164\164\157\155" + "\040\173\040\142\157\170\055\163\150\141\144\157\167\072\040\151" + "\156\163\145\164\040\060\040\055\061\160\170\040\141\154\160\150" + "\141\050\100\163\150\141\144\145\137\143\157\154\157\162\054\060" + "\056\067\065\051\073\040\142\141\143\153\147\162\157\165\156\144" + "\072\040\154\151\156\145\141\162\055\147\162\141\144\151\145\156" + "\164\050\164\157\040\164\157\160\054\040\141\154\160\150\141\050" + "\100\163\150\141\144\145\137\143\157\154\157\162\054\060\056\067" + "\065\051\054\040\164\162\141\156\163\160\141\162\145\156\164\040" + "\064\160\170\051\073\040\175\012\012\167\151\156\144\157\167\056" + "\144\145\166\145\154\040\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\164\157\160\055\142\141\162\040\173\040\142" + "\141\143\153\147\162\157\165\156\144\055\151\155\141\147\145\072" + "\040\143\162\157\163\163\055\146\141\144\145\050\065\045\040\055" + "\147\164\153\055\162\145\143\157\154\157\162\050\165\162\154\050" + "\042\141\163\163\145\164\163\057\144\145\166\145\154\055\163\171" + "\155\142\157\154\151\143\056\163\166\147\042\051\051\054\040\151" + "\155\141\147\145\050\164\162\141\156\163\160\141\162\145\156\164" + "\051\051\073\040\142\141\143\153\147\162\157\165\156\144\055\162" + "\145\160\145\141\164\072\040\162\145\160\145\141\164\055\170\073" + "\040\175\012\012\167\151\156\144\157\167\056\144\145\166\145\154" + "\040\144\151\141\154\157\147\040\164\157\157\154\142\141\162\166" + "\151\145\167\040\076\040\056\164\157\160\055\142\141\162\040\173" + "\040\142\141\143\153\147\162\157\165\156\144\055\151\155\141\147" + "\145\072\040\165\156\163\145\164\073\040\142\141\143\153\147\162" + "\157\165\156\144\055\162\145\160\145\141\164\072\040\165\156\163" + "\145\164\073\040\175\012\012\164\157\157\154\164\151\160\040\173" + "\040\160\141\144\144\151\156\147\072\040\066\160\170\040\061\060" + "\160\170\073\040\142\157\162\144\145\162\055\162\141\144\151\165" + "\163\072\040\071\160\170\073\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\156\157\156\145\073\040\175\012\012\164\157\157" + "\154\164\151\160\056\142\141\143\153\147\162\157\165\156\144\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\070\051\073\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\154\151\160\072\040\160\141\144\144\151\156\147" + "\055\142\157\170\073\040\142\157\162\144\145\162\072\040\061\160" + "\170\040\163\157\154\151\144\040\162\147\142\141\050\062\065\065" + "\054\040\062\065\065\054\040\062\065\065\054\040\060\056\061\051" + "\073\040\143\157\154\157\162\072\040\167\150\151\164\145\073\040" + "\175\012\012\164\157\157\154\164\151\160\040\076\040\142\157\170" + "\040\173\040\142\157\162\144\145\162\055\163\160\141\143\151\156" + "\147\072\040\066\160\170\073\040\175\012\012\056\166\151\145\167" + "\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\054\040\164\145\170\164\166\151\145\167\040\076\040\164\145" + "\170\164\054\040\144\151\141\154\157\147\055\150\157\163\164\040" + "\076\040\144\151\141\154\157\147\056\166\151\145\167\040\163\150" + "\145\145\164\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\144\151\141\154\157\147\055\150\157\163\164\040\076\040" + "\144\151\141\154\157\147\056\144\151\141\154\157\147\055\141\143" + "\164\151\157\156\055\142\157\170\040\163\150\145\145\164\054\040" + "\151\143\157\156\166\151\145\167\040\173\040\143\157\154\157\162" + "\072\040\100\166\151\145\167\137\146\147\137\143\157\154\157\162" + "\073\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\100\166\151\145\167\137\142\147\137\143\157\154" + "\157\162\073\040\175\012\012\056\166\151\145\167\072\144\151\163" + "\141\142\154\145\144\054\040\167\151\156\144\157\167\056\160\162" + "\151\156\164\040\056\144\151\141\154\157\147\055\141\143\164\151" + "\157\156\055\142\157\170\072\144\151\163\141\142\154\145\144\054" + "\040\164\145\170\164\166\151\145\167\040\076\040\164\145\170\164" + "\072\144\151\163\141\142\154\145\144\054\040\144\151\141\154\157" + "\147\055\150\157\163\164\040\076\040\144\151\141\154\157\147\056" + "\166\151\145\167\040\163\150\145\145\164\072\144\151\163\141\142" + "\154\145\144\054\040\167\151\156\144\157\167\056\160\162\151\156" + "\164\040\144\151\141\154\157\147\055\150\157\163\164\040\076\040" + "\144\151\141\154\157\147\056\144\151\141\154\157\147\055\141\143" + "\164\151\157\156\055\142\157\170\040\163\150\145\145\164\072\144" + "\151\163\141\142\154\145\144\054\040\151\143\157\156\166\151\145" + "\167\072\144\151\163\141\142\154\145\144\040\173\040\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\143\165\162\162\145\156" + "\164\103\157\154\157\162\054\060\056\065\051\073\040\142\141\143" + "\153\147\162\157\165\156\144\055\143\157\154\157\162\072\040\155" + "\151\170\050\100\167\151\156\144\157\167\137\142\147\137\143\157" + "\154\157\162\054\100\166\151\145\167\137\142\147\137\143\157\154" + "\157\162\054\060\056\064\051\073\040\175\012\012\056\166\151\145" + "\167\072\163\145\154\145\143\164\145\144\072\146\157\143\165\163" + "\054\040\056\166\151\145\167\072\163\145\154\145\143\164\145\144" + "\054\040\167\151\156\144\157\167\056\160\162\151\156\164\040\056" + "\144\151\141\154\157\147\055\141\143\164\151\157\156\055\142\157" + "\170\072\163\145\154\145\143\164\145\144\054\040\164\145\170\164" + "\166\151\145\167\040\076\040\164\145\170\164\072\163\145\154\145" + "\143\164\145\144\054\040\144\151\141\154\157\147\055\150\157\163" + "\164\040\076\040\144\151\141\154\157\147\056\166\151\145\167\040" + "\163\150\145\145\164\072\163\145\154\145\143\164\145\144\054\040" + "\167\151\156\144\157\167\056\160\162\151\156\164\040\144\151\141" + "\154\157\147\055\150\157\163\164\040\076\040\144\151\141\154\157" + "\147\056\144\151\141\154\157\147\055\141\143\164\151\157\156\055" + "\142\157\170\040\163\150\145\145\164\072\163\145\154\145\143\164" + "\145\144\054\040\151\143\157\156\166\151\145\167\072\163\145\154" + "\145\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162" + "\054\060\056\062\065\051\073\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\066\160\170\073\040\175\012\012\164" + "\145\170\164\166\151\145\167\040\173\040\143\141\162\145\164\055" + "\143\157\154\157\162\072\040\143\165\162\162\145\156\164\103\157" + "\154\157\162\073\040\175\012\012\164\145\170\164\166\151\145\167" + "\040\076\040\164\145\170\164\040\173\040\142\141\143\153\147\162" + "\157\165\156\144\055\143\157\154\157\162\072\040\164\162\141\156" + "\163\160\141\162\145\156\164\073\040\175\012\012\164\145\170\164" + "\166\151\145\167\040\076\040\142\157\162\144\145\162\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\155\151\170\050\100\167\151\156\144\157\167\137\142\147" + "\137\143\157\154\157\162\054\100\166\151\145\167\137\142\147\137" + "\143\157\154\157\162\054\060\056\065\051\073\040\175\012\012\164" + "\145\170\164\166\151\145\167\072\144\162\157\160\050\141\143\164" + "\151\166\145\051\040\173\040\143\141\162\145\164\055\143\157\154" + "\157\162\072\040\100\141\143\143\145\156\164\137\142\147\137\143" + "\157\154\157\162\073\040\175\012\012\162\165\142\142\145\162\142" + "\141\156\144\040\173\040\142\157\162\144\145\162\072\040\061\160" + "\170\040\163\157\154\151\144\040\100\141\143\143\145\156\164\137" + "\143\157\154\157\162\073\040\142\141\143\153\147\162\157\165\156" + "\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050\100" + "\141\143\143\145\156\164\137\143\157\154\157\162\054\060\056\062" + "\051\073\040\175\012\012\146\154\157\167\142\157\170\040\076\040" + "\146\154\157\167\142\157\170\143\150\151\154\144\054\040\147\162" + "\151\144\166\151\145\167\040\076\040\143\150\151\154\144\040\173" + "\040\160\141\144\144\151\156\147\072\040\063\160\170\073\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\066\160" + "\170\073\040\175\012\012\146\154\157\167\142\157\170\040\076\040" + "\146\154\157\167\142\157\170\143\150\151\154\144\054\040\147\162" + "\151\144\166\151\145\167\040\076\040\143\150\151\154\144\040\173" + "\040\157\165\164\154\151\156\145\072\040\060\040\163\157\154\151" + "\144\040\164\162\141\156\163\160\141\162\145\156\164\073\040\157" + "\165\164\154\151\156\145\055\157\146\146\163\145\164\072\040\064" + "\160\170\073\040\164\162\141\156\163\151\164\151\157\156\072\040" + "\157\165\164\154\151\156\145\055\143\157\154\157\162\040\062\060" + "\060\155\163\040\143\165\142\151\143\055\142\145\172\151\145\162" + "\050\060\056\062\065\054\040\060\056\064\066\054\040\060\056\064" + "\065\054\040\060\056\071\064\051\054\040\157\165\164\154\151\156" + "\145\055\167\151\144\164\150\040\062\060\060\155\163\040\143\165" + "\142\151\143\055\142\145\172\151\145\162\050\060\056\062\065\054" + "\040\060\056\064\066\054\040\060\056\064\065\054\040\060\056\071" + "\064\051\054\040\157\165\164\154\151\156\145\055\157\146\146\163" + "\145\164\040\062\060\060\155\163\040\143\165\142\151\143\055\142" + "\145\172\151\145\162\050\060\056\062\065\054\040\060\056\064\066" + "\054\040\060\056\064\065\054\040\060\056\071\064\051\073\040\175" + "\012\012\146\154\157\167\142\157\170\040\076\040\146\154\157\167" + "\142\157\170\143\150\151\154\144\072\146\157\143\165\163\072\146" + "\157\143\165\163\055\166\151\163\151\142\154\145\054\040\147\162" + "\151\144\166\151\145\167\040\076\040\143\150\151\154\144\072\146" + "\157\143\165\163\072\146\157\143\165\163\055\166\151\163\151\142" + "\154\145\040\173\040\157\165\164\154\151\156\145\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156" + "\164\137\143\157\154\157\162\054\060\056\065\051\073\040\157\165" + "\164\154\151\156\145\055\167\151\144\164\150\072\040\062\160\170" + "\073\040\157\165\164\154\151\156\145\055\157\146\146\163\145\164" + "\072\040\055\062\160\170\073\040\175\012\012\146\154\157\167\142" + "\157\170\040\076\040\146\154\157\167\142\157\170\143\150\151\154" + "\144\072\163\145\154\145\143\164\145\144\054\040\147\162\151\144" + "\166\151\145\167\040\076\040\143\150\151\154\144\072\163\145\154" + "\145\143\164\145\144\040\173\040\142\141\143\153\147\162\157\165" + "\156\144\055\143\157\154\157\162\072\040\141\154\160\150\141\050" + "\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162" + "\054\060\056\062\065\051\073\040\175\012\012\147\162\151\144\166" + "\151\145\167\040\076\040\143\150\151\154\144\056\141\143\164\151" + "\166\141\164\141\142\154\145\072\150\157\166\145\162\040\173\040" + "\142\141\143\153\147\162\157\165\156\144\055\143\157\154\157\162" + "\072\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103" + "\157\154\157\162\054\060\056\060\064\051\073\040\175\012\012\147" + "\162\151\144\166\151\145\167\040\076\040\143\150\151\154\144\056" + "\141\143\164\151\166\141\164\141\142\154\145\072\141\143\164\151" + "\166\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055" + "\143\157\154\157\162\072\040\141\154\160\150\141\050\143\165\162" + "\162\145\156\164\103\157\154\157\162\054\060\056\060\070\051\073" + "\040\175\012\012\147\162\151\144\166\151\145\167\040\076\040\143" + "\150\151\154\144\056\141\143\164\151\166\141\164\141\142\154\145" + "\072\163\145\154\145\143\164\145\144\072\150\157\166\145\162\040" + "\173\040\142\141\143\153\147\162\157\165\156\144\055\143\157\154" + "\157\162\072\040\141\154\160\150\141\050\100\141\143\143\145\156" + "\164\137\142\147\137\143\157\154\157\162\054\060\056\063\062\051" + "\073\040\175\012\012\147\162\151\144\166\151\145\167\040\076\040" + "\143\150\151\154\144\056\141\143\164\151\166\141\164\141\142\154" + "\145\072\163\145\154\145\143\164\145\144\072\141\143\164\151\166" + "\145\040\173\040\142\141\143\153\147\162\157\165\156\144\055\143" + "\157\154\157\162\072\040\141\154\160\150\141\050\100\141\143\143" + "\145\156\164\137\142\147\137\143\157\154\157\162\054\060\056\063" + "\071\051\073\040\175\012\012\166\151\145\167\163\167\151\164\143" + "\150\145\162\040\173\040\142\157\162\144\145\162\055\163\160\141" + "\143\151\156\147\072\040\063\160\170\073\040\175\012\012\166\151" + "\145\167\163\167\151\164\143\150\145\162\056\156\141\162\162\157" + "\167\040\173\040\155\141\162\147\151\156\055\164\157\160\072\040" + "\055\063\160\170\073\040\155\141\162\147\151\156\055\142\157\164" + "\164\157\155\072\040\055\063\160\170\073\040\155\151\156\055\150" + "\145\151\147\150\164\072\040\066\160\170\073\040\175\012\012\166" + "\151\145\167\163\167\151\164\143\150\145\162\040\142\165\164\164" + "\157\156\056\164\157\147\147\154\145\040\173\040\160\141\144\144" + "\151\156\147\072\040\060\073\040\175\012\012\166\151\145\167\163" + "\167\151\164\143\150\145\162\040\142\165\164\164\157\156\056\164" + "\157\147\147\154\145\040\076\040\163\164\141\143\153\040\076\040" + "\142\157\170\056\156\141\162\162\157\167\040\173\040\146\157\156" + "\164\055\163\151\172\145\072\040\060\056\067\065\162\145\155\073" + "\040\160\141\144\144\151\156\147\055\164\157\160\072\040\064\160" + "\170\073\040\175\012\012\166\151\145\167\163\167\151\164\143\150" + "\145\162\040\142\165\164\164\157\156\056\164\157\147\147\154\145" + "\040\076\040\163\164\141\143\153\040\076\040\142\157\170\056\156" + "\141\162\162\157\167\040\076\040\154\141\142\145\154\040\173\040" + "\155\151\156\055\150\145\151\147\150\164\072\040\061\070\160\170" + "\073\040\160\141\144\144\151\156\147\055\154\145\146\164\072\040" + "\063\160\170\073\040\160\141\144\144\151\156\147\055\162\151\147" + "\150\164\072\040\063\160\170\073\040\160\141\144\144\151\156\147" + "\055\142\157\164\164\157\155\072\040\062\160\170\073\040\175\012" + "\012\166\151\145\167\163\167\151\164\143\150\145\162\040\142\165" + "\164\164\157\156\056\164\157\147\147\154\145\040\076\040\163\164" + "\141\143\153\040\076\040\142\157\170\056\167\151\144\145\040\173" + "\040\160\141\144\144\151\156\147\072\040\062\160\170\040\061\062" + "\160\170\073\040\142\157\162\144\145\162\055\163\160\141\143\151" + "\156\147\072\040\066\160\170\073\040\175\012\012\057\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\040\101\144\167\126\151\145\167\123\167\151\164\143" + "\150\145\162\102\141\162\040\052\040\052\057\012\166\151\145\167" + "\163\167\151\164\143\150\145\162\142\141\162\040\141\143\164\151" + "\157\156\142\141\162\040\076\040\162\145\166\145\141\154\145\162" + "\040\076\040\142\157\170\040\173\040\160\141\144\144\151\156\147" + "\055\154\145\146\164\072\040\060\073\040\160\141\144\144\151\156" + "\147\055\162\151\147\150\164\072\040\060\073\040\160\141\144\144" + "\151\156\147\055\164\157\160\072\040\067\160\170\073\040\175\012" + "\012\164\157\157\154\142\141\162\166\151\145\167\040\076\040\056" + "\164\157\160\055\142\141\162\040\056\143\157\154\154\141\160\163" + "\145\055\163\160\141\143\151\156\147\040\166\151\145\167\163\167" + "\151\164\143\150\145\162\142\141\162\040\141\143\164\151\157\156" + "\142\141\162\040\076\040\162\145\166\145\141\154\145\162\040\076" + "\040\142\157\170\054\040\164\157\157\154\142\141\162\166\151\145" + "\167\040\076\040\056\142\157\164\164\157\155\055\142\141\162\040" + "\056\143\157\154\154\141\160\163\145\055\163\160\141\143\151\156" + "\147\040\166\151\145\167\163\167\151\164\143\150\145\162\142\141" + "\162\040\141\143\164\151\157\156\142\141\162\040\076\040\162\145" + "\166\145\141\154\145\162\040\076\040\142\157\170\040\173\040\160" + "\141\144\144\151\156\147\055\164\157\160\072\040\066\160\170\073" + "\040\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\052\052\052\052\052\052\040\101\144" + "\167\126\151\145\167\123\167\151\164\143\150\145\162\124\151\164" + "\154\145\040\052\040\052\057\012\166\151\145\167\163\167\151\164" + "\143\150\145\162\164\151\164\154\145\040\173\040\155\141\162\147" + "\151\156\055\164\157\160\072\040\055\066\160\170\073\040\155\141" + "\162\147\151\156\055\142\157\164\164\157\155\072\040\055\066\160" + "\170\073\040\175\012\012\166\151\145\167\163\167\151\164\143\150" + "\145\162\164\151\164\154\145\040\166\151\145\167\163\167\151\164" + "\143\150\145\162\040\173\040\155\141\162\147\151\156\055\154\145" + "\146\164\072\040\061\062\160\170\073\040\155\141\162\147\151\156" + "\055\162\151\147\150\164\072\040\061\062\160\170\073\040\175\012" + "\012\166\151\145\167\163\167\151\164\143\150\145\162\164\151\164" + "\154\145\040\166\151\145\167\163\167\151\164\143\150\145\162\056" + "\156\141\162\162\157\167\040\173\040\155\141\162\147\151\156\055" + "\164\157\160\072\040\063\160\170\073\040\155\141\162\147\151\156" + "\055\142\157\164\164\157\155\072\040\063\160\170\073\040\175\012" + "\012\166\151\145\167\163\167\151\164\143\150\145\162\164\151\164" + "\154\145\040\166\151\145\167\163\167\151\164\143\150\145\162\056" + "\167\151\144\145\040\173\040\155\141\162\147\151\156\055\164\157" + "\160\072\040\066\160\170\073\040\155\141\162\147\151\156\055\142" + "\157\164\164\157\155\072\040\066\160\170\073\040\175\012\012\166" + "\151\145\167\163\167\151\164\143\150\145\162\164\151\164\154\145" + "\040\167\151\156\144\157\167\164\151\164\154\145\040\173\040\155" + "\141\162\147\151\156\055\164\157\160\072\040\060\073\040\155\141" + "\162\147\151\156\055\142\157\164\164\157\155\072\040\060\073\040" + "\175\012\012\057\052\052\052\052\052\052\052\052\052\052\052\052" + "\052\052\052\052\052\052\052\040\101\144\167\111\156\144\151\143" + "\141\164\157\162\102\151\156\040\052\040\052\057\012\151\156\144" + "\151\143\141\164\157\162\142\151\156\040\076\040\151\156\144\151" + "\143\141\164\157\162\054\040\151\156\144\151\143\141\164\157\162" + "\142\151\156\040\076\040\155\141\163\153\040\173\040\155\151\156" + "\055\167\151\144\164\150\072\040\066\160\170\073\040\155\151\156" + "\055\150\145\151\147\150\164\072\040\066\160\170\073\040\142\157" + "\162\144\145\162\055\162\141\144\151\165\163\072\040\061\060\060" + "\160\170\073\040\175\012\012\151\156\144\151\143\141\164\157\162" + "\142\151\156\040\076\040\151\156\144\151\143\141\164\157\162\040" + "\173\040\155\141\162\147\151\156\072\040\061\160\170\073\040\142" + "\141\143\153\147\162\157\165\156\144\072\040\141\154\160\150\141" + "\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060\056" + "\064\051\073\040\175\012\012\151\156\144\151\143\141\164\157\162" + "\142\151\156\040\076\040\155\141\163\153\040\173\040\160\141\144" + "\144\151\156\147\072\040\061\160\170\073\040\142\141\143\153\147" + "\162\157\165\156\144\072\040\142\154\141\143\153\073\040\175\012" + "\012\151\156\144\151\143\141\164\157\162\142\151\156\056\156\145" + "\145\144\163\055\141\164\164\145\156\164\151\157\156\040\076\040" + "\151\156\144\151\143\141\164\157\162\040\173\040\142\141\143\153" + "\147\162\157\165\156\144\072\040\100\141\143\143\145\156\164\137" + "\143\157\154\157\162\073\040\175\012\012\151\156\144\151\143\141" + "\164\157\162\142\151\156\056\142\141\144\147\145\040\076\040\151" + "\156\144\151\143\141\164\157\162\054\040\151\156\144\151\143\141" + "\164\157\162\142\151\156\056\142\141\144\147\145\040\076\040\155" + "\141\163\153\040\173\040\155\151\156\055\150\145\151\147\150\164" + "\072\040\061\063\160\170\073\040\175\012\012\151\156\144\151\143" + "\141\164\157\162\142\151\156\056\142\141\144\147\145\040\076\040" + "\151\156\144\151\143\141\164\157\162\040\076\040\154\141\142\145" + "\154\040\173\040\146\157\156\164\055\163\151\172\145\072\040\060" + "\056\066\162\145\155\073\040\146\157\156\164\055\167\145\151\147" + "\150\164\072\040\142\157\154\144\073\040\160\141\144\144\151\156" + "\147\055\154\145\146\164\072\040\064\160\170\073\040\160\141\144" + "\144\151\156\147\055\162\151\147\150\164\072\040\064\160\170\073" + "\040\143\157\154\157\162\072\040\167\150\151\164\145\073\040\175" + "\012\012\151\156\144\151\143\141\164\157\162\142\151\156\056\142" + "\141\144\147\145\056\156\145\145\144\163\055\141\164\164\145\156" + "\164\151\157\156\040\076\040\151\156\144\151\143\141\164\157\162" + "\040\173\040\142\141\143\153\147\162\157\165\156\144\072\040\100" + "\141\143\143\145\156\164\137\142\147\137\143\157\154\157\162\073" + "\040\175\012\012\151\156\144\151\143\141\164\157\162\142\151\156" + "\056\142\141\144\147\145\056\156\145\145\144\163\055\141\164\164" + "\145\156\164\151\157\156\040\076\040\151\156\144\151\143\141\164" + "\157\162\040\076\040\154\141\142\145\154\040\173\040\143\157\154" + "\157\162\072\040\100\141\143\143\145\156\164\137\146\147\137\143" + "\157\154\157\162\073\040\175\012\012\167\151\156\144\157\167\056" + "\143\163\144\040\173\040\142\157\170\055\163\150\141\144\157\167" + "\072\040\060\040\061\160\170\040\063\160\170\040\063\160\170\040" + "\164\162\141\156\163\160\141\162\145\156\164\054\040\060\040\062" + "\160\170\040\070\160\170\040\062\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\061\063\051\054\040" + "\060\040\063\160\170\040\062\060\160\170\040\061\060\160\170\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\060\071\051\054\040\060\040\066\160\170\040\063\062\160\170\040" + "\061\066\160\170\040\162\147\142\141\050\060\054\040\060\054\040" + "\060\054\040\060\056\060\064\051\054\040\060\040\060\040\060\040" + "\061\160\170\040\162\147\142\141\050\060\054\040\060\054\040\060" + "\054\040\060\056\060\065\051\073\040\155\141\162\147\151\156\072" + "\040\060\160\170\073\040\142\157\162\144\145\162\055\162\141\144" + "\151\165\163\072\040\061\062\160\170\073\040\157\165\164\154\151" + "\156\145\072\040\061\160\170\040\163\157\154\151\144\040\162\147" + "\142\141\050\062\065\065\054\040\062\065\065\054\040\062\065\065" + "\054\040\060\056\060\067\051\073\040\157\165\164\154\151\156\145" + "\055\157\146\146\163\145\164\072\040\055\061\160\170\073\040\175" + "\012\012\167\151\156\144\157\167\056\143\163\144\072\142\141\143" + "\153\144\162\157\160\040\173\040\142\157\170\055\163\150\141\144" + "\157\167\072\040\060\040\061\160\170\040\063\160\170\040\063\160" + "\170\040\162\147\142\141\050\060\054\040\060\054\040\060\054\040" + "\060\056\060\071\051\054\040\060\040\062\160\170\040\061\064\160" + "\170\040\065\160\170\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\060\065\051\054\040\060\040\064\160\170" + "\040\062\070\160\170\040\061\062\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\060\063\051\054\040" + "\060\040\066\160\170\040\063\062\160\170\040\061\066\160\170\040" + "\164\162\141\156\163\160\141\162\145\156\164\054\040\060\040\060" + "\040\060\040\061\160\170\040\162\147\142\141\050\060\054\040\060" + "\054\040\060\054\040\060\056\060\062\051\073\040\164\162\141\156" + "\163\151\164\151\157\156\072\040\142\157\170\055\163\150\141\144" + "\157\167\040\062\060\060\155\163\040\145\141\163\145\055\157\165" + "\164\073\040\175\012\012\167\151\156\144\157\167\056\143\163\144" + "\056\144\151\141\154\157\147\056\155\145\163\163\141\147\145\054" + "\040\167\151\156\144\157\167\056\143\163\144\056\155\145\163\163" + "\141\147\145\144\151\141\154\157\147\040\173\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\060\040\062\160\170\040\070\160" + "\170\040\062\160\170\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\060\067\051\054\040\060\040\063\160\170" + "\040\062\060\160\170\040\061\060\160\170\040\162\147\142\141\050" + "\060\054\040\060\054\040\060\054\040\060\056\060\065\051\054\040" + "\060\040\066\160\170\040\063\062\160\170\040\061\066\160\170\040" + "\162\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056" + "\060\062\051\054\040\060\040\060\040\060\040\061\160\170\040\162" + "\147\142\141\050\060\054\040\060\054\040\060\054\040\060\056\060" + "\065\051\073\040\175\012\012\167\151\156\144\157\167\056\143\163" + "\144\056\164\151\154\145\144\054\040\167\151\156\144\157\167\056" + "\143\163\144\056\164\151\154\145\144\055\164\157\160\054\040\167" + "\151\156\144\157\167\056\143\163\144\056\164\151\154\145\144\055" + "\154\145\146\164\054\040\167\151\156\144\157\167\056\143\163\144" + "\056\164\151\154\145\144\055\162\151\147\150\164\054\040\167\151" + "\156\144\157\167\056\143\163\144\056\164\151\154\145\144\055\142" + "\157\164\164\157\155\040\173\040\142\157\162\144\145\162\055\162" + "\141\144\151\165\163\072\040\060\073\040\157\165\164\154\151\156" + "\145\072\040\156\157\156\145\073\040\142\157\170\055\163\150\141" + "\144\157\167\072\040\060\040\060\040\060\040\061\160\170\040\141" + "\154\160\150\141\050\143\165\162\162\145\156\164\103\157\154\157" + "\162\054\060\056\061\065\051\054\040\060\040\060\040\060\040\062" + "\060\160\170\040\164\162\141\156\163\160\141\162\145\156\164\073" + "\040\175\012\012\167\151\156\144\157\167\056\143\163\144\056\164" + "\151\154\145\144\072\142\141\143\153\144\162\157\160\054\040\167" + "\151\156\144\157\167\056\143\163\144\056\164\151\154\145\144\055" + "\164\157\160\072\142\141\143\153\144\162\157\160\054\040\167\151" + "\156\144\157\167\056\143\163\144\056\164\151\154\145\144\055\154" + "\145\146\164\072\142\141\143\153\144\162\157\160\054\040\167\151" + "\156\144\157\167\056\143\163\144\056\164\151\154\145\144\055\162" + "\151\147\150\164\072\142\141\143\153\144\162\157\160\054\040\167" + "\151\156\144\157\167\056\143\163\144\056\164\151\154\145\144\055" + "\142\157\164\164\157\155\072\142\141\143\153\144\162\157\160\040" + "\173\040\142\157\170\055\163\150\141\144\157\167\072\040\060\040" + "\060\040\060\040\061\160\170\040\141\154\160\150\141\050\143\165" + "\162\162\145\156\164\103\157\154\157\162\054\060\056\061\065\051" + "\054\040\060\040\060\040\060\040\062\060\160\170\040\164\162\141" + "\156\163\160\141\162\145\156\164\073\040\175\012\012\167\151\156" + "\144\157\167\056\143\163\144\056\155\141\170\151\155\151\172\145" + "\144\054\040\167\151\156\144\157\167\056\143\163\144\056\146\165" + "\154\154\163\143\162\145\145\156\040\173\040\142\157\162\144\145" + "\162\055\162\141\144\151\165\163\072\040\060\073\040\157\165\164" + "\154\151\156\145\072\040\156\157\156\145\073\040\142\157\170\055" + "\163\150\141\144\157\167\072\040\156\157\156\145\073\040\164\162" + "\141\156\163\151\164\151\157\156\072\040\156\157\156\145\073\040" + "\175\012\012\167\151\156\144\157\167\056\163\157\154\151\144\055" + "\143\163\144\040\173\040\155\141\162\147\151\156\072\040\060\073" + "\040\160\141\144\144\151\156\147\072\040\065\160\170\073\040\142" + "\157\162\144\145\162\055\162\141\144\151\165\163\072\040\060\073" + "\040\142\157\170\055\163\150\141\144\157\167\072\040\151\156\163" + "\145\164\040\060\040\060\040\060\040\065\160\170\040\141\154\160" + "\150\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054" + "\060\056\061\065\051\054\040\151\156\163\145\164\040\060\040\060" + "\040\060\040\064\160\170\040\100\150\145\141\144\145\162\142\141" + "\162\137\142\147\137\143\157\154\157\162\054\040\151\156\163\145" + "\164\040\060\040\060\040\060\040\061\160\170\040\141\154\160\150" + "\141\050\143\165\162\162\145\156\164\103\157\154\157\162\054\060" + "\056\061\065\051\073\040\175\012\012\167\151\156\144\157\167\056" + "\163\157\154\151\144\055\143\163\144\072\142\141\143\153\144\162" + "\157\160\040\173\040\142\157\170\055\163\150\141\144\157\167\072" + "\040\151\156\163\145\164\040\060\040\060\040\060\040\065\160\170" + "\040\141\154\160\150\141\050\143\165\162\162\145\156\164\103\157" + "\154\157\162\054\060\056\061\065\051\054\040\151\156\163\145\164" + "\040\060\040\060\040\060\040\064\160\170\040\100\150\145\141\144" + "\145\162\142\141\162\137\142\141\143\153\144\162\157\160\137\143" + "\157\154\157\162\054\040\151\156\163\145\164\040\060\040\060\040" + "\060\040\061\160\170\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\065\051\073\040" + "\175\012\012\167\151\156\144\157\167\056\163\163\144\040\173\040" + "\142\157\170\055\163\150\141\144\157\167\072\040\060\040\060\040" + "\060\040\061\160\170\040\162\147\142\141\050\060\054\040\060\054" + "\040\060\054\040\060\056\060\065\051\073\040\175\012\012\057\052" + "\040\120\165\142\154\151\143\040\143\157\154\157\162\163\040\146" + "\162\157\155\040\104\145\146\141\165\154\164\040\052\057\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\164\150\145" + "\155\145\137\142\147\137\143\157\154\157\162\040\100\167\151\156" + "\144\157\167\137\142\147\137\143\157\154\157\162\073\012\100\144" + "\145\146\151\156\145\055\143\157\154\157\162\040\164\150\145\155" + "\145\137\146\147\137\143\157\154\157\162\040\100\167\151\156\144" + "\157\167\137\146\147\137\143\157\154\157\162\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\164\150\145\155\145" + "\137\142\141\163\145\137\143\157\154\157\162\040\100\166\151\145" + "\167\137\142\147\137\143\157\154\157\162\073\012\100\144\145\146" + "\151\156\145\055\143\157\154\157\162\040\164\150\145\155\145\137" + "\164\145\170\164\137\143\157\154\157\162\040\100\166\151\145\167" + "\137\146\147\137\143\157\154\157\162\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\164\150\145\155\145\137\163" + "\145\154\145\143\164\145\144\137\142\147\137\143\157\154\157\162" + "\040\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\164\150\145\155\145\137\163\145\154\145\143\164\145\144\137" + "\146\147\137\143\157\154\157\162\040\100\141\143\143\145\156\164" + "\137\146\147\137\143\157\154\157\162\073\012\100\144\145\146\151" + "\156\145\055\143\157\154\157\162\040\151\156\163\145\156\163\151" + "\164\151\166\145\137\142\147\137\143\157\154\157\162\040\155\151" + "\170\050\100\167\151\156\144\157\167\137\142\147\137\143\157\154" + "\157\162\054\100\166\151\145\167\137\142\147\137\143\157\154\157" + "\162\054\060\056\064\051\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\151\156\163\145\156\163\151\164\151\166" + "\145\137\146\147\137\143\157\154\157\162\040\141\154\160\150\141" + "\050\100\167\151\156\144\157\167\137\146\147\137\143\157\154\157" + "\162\054\060\056\065\051\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\151\156\163\145\156\163\151\164\151\166" + "\145\137\142\141\163\145\137\143\157\154\157\162\040\100\166\151" + "\145\167\137\142\147\137\143\157\154\157\162\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\142\157\162\144\145" + "\162\163\040\141\154\160\150\141\050\143\165\162\162\145\156\164" + "\103\157\154\157\162\054\060\056\061\065\051\073\012\100\144\145" + "\146\151\156\145\055\143\157\154\157\162\040\164\150\145\155\145" + "\137\165\156\146\157\143\165\163\145\144\137\142\147\137\143\157" + "\154\157\162\040\100\167\151\156\144\157\167\137\142\147\137\143" + "\157\154\157\162\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\164\150\145\155\145\137\165\156\146\157\143\165" + "\163\145\144\137\146\147\137\143\157\154\157\162\040\100\167\151" + "\156\144\157\167\137\146\147\137\143\157\154\157\162\073\012\100" + "\144\145\146\151\156\145\055\143\157\154\157\162\040\164\150\145" + "\155\145\137\165\156\146\157\143\165\163\145\144\137\142\141\163" + "\145\137\143\157\154\157\162\040\100\166\151\145\167\137\142\147" + "\137\143\157\154\157\162\073\012\100\144\145\146\151\156\145\055" + "\143\157\154\157\162\040\164\150\145\155\145\137\165\156\146\157" + "\143\165\163\145\144\137\164\145\170\164\137\143\157\154\157\162" + "\040\100\166\151\145\167\137\146\147\137\143\157\154\157\162\073" + "\012\100\144\145\146\151\156\145\055\143\157\154\157\162\040\164" + "\150\145\155\145\137\165\156\146\157\143\165\163\145\144\137\163" + "\145\154\145\143\164\145\144\137\142\147\137\143\157\154\157\162" + "\040\100\141\143\143\145\156\164\137\142\147\137\143\157\154\157" + "\162\073\012\100\144\145\146\151\156\145\055\143\157\154\157\162" + "\040\164\150\145\155\145\137\165\156\146\157\143\165\163\145\144" + "\137\163\145\154\145\143\164\145\144\137\146\147\137\143\157\154" + "\157\162\040\100\141\143\143\145\156\164\137\146\147\137\143\157" + "\154\157\162\073\012\100\144\145\146\151\156\145\055\143\157\154" + "\157\162\040\165\156\146\157\143\165\163\145\144\137\151\156\163" + "\145\156\163\151\164\151\166\145\137\143\157\154\157\162\040\100" + "\151\156\163\145\156\163\151\164\151\166\145\137\142\147\137\143" + "\157\154\157\162\073\012\100\144\145\146\151\156\145\055\143\157" + "\154\157\162\040\165\156\146\157\143\165\163\145\144\137\142\157" + "\162\144\145\162\163\040\141\154\160\150\141\050\143\165\162\162" + "\145\156\164\103\157\154\157\162\054\060\056\061\065\051\073\012" + "\000\000\050\165\165\141\171\051\144\141\163\150\100\062\055\163" + "\171\155\142\157\154\151\143\056\163\171\155\142\157\154\151\143" + "\056\160\156\147\000\000\000\000\267\000\000\000\000\000\000\000" + "\211\120\116\107\015\012\032\012\000\000\000\015\111\110\104\122" + "\000\000\000\034\000\000\000\034\010\006\000\000\000\162\015\337" + "\224\000\000\000\004\163\102\111\124\010\010\010\010\174\010\144" + "\210\000\000\000\156\111\104\101\124\110\211\355\322\061\016\200" + "\040\020\005\321\211\347\260\307\253\133\250\264\026\336\310\204" + "\310\005\260\060\064\006\150\144\255\376\113\266\241\031\262\000" + "\042\042\177\233\000\017\104\040\175\234\010\154\200\153\305\102" + "\207\320\173\102\055\352\015\142\171\226\122\260\307\032\153\163" + "\345\310\120\052\033\110\245\340\141\030\334\113\207\016\233\117" + "\163\002\143\355\046\016\130\171\166\336\343\335\346\126\114\104" + "\304\306\015\204\024\204\237\003\050\375\057\000\000\000\000\111" + "\105\116\104\256\102\140\202\000\000\050\165\165\141\171\051" }; + +static GStaticResource static_resource = { adw_stylesheet_resource_data.data, sizeof (adw_stylesheet_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *adw_stylesheet_get_resource (void); +GResource *adw_stylesheet_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(adw_stylesheetresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(adw_stylesheetresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(adw_stylesheetresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(adw_stylesheetresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void adw_stylesheetresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void adw_stylesheetresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/libadwaita/stylesheet/adwaita-stylesheet-resources.h b/libadwaita/libadwaita/stylesheet/adwaita-stylesheet-resources.h new file mode 100644 index 0000000..36db0c3 --- /dev/null +++ b/libadwaita/libadwaita/stylesheet/adwaita-stylesheet-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_adw_stylesheet_H__ +#define __RESOURCE_adw_stylesheet_H__ + +#include + +G_GNUC_INTERNAL GResource *adw_stylesheet_get_resource (void); +#endif diff --git a/libadwaita/libadwaita/stylesheet/base-hc.css b/libadwaita/libadwaita/stylesheet/base-hc.css new file mode 100644 index 0000000..01be71d --- /dev/null +++ b/libadwaita/libadwaita/stylesheet/base-hc.css @@ -0,0 +1,2535 @@ +@define-color blue_1 #99c1f1; +@define-color blue_2 #62a0ea; +@define-color blue_3 #3584e4; +@define-color blue_4 #1c71d8; +@define-color blue_5 #1a5fb4; +@define-color green_1 #8ff0a4; +@define-color green_2 #57e389; +@define-color green_3 #33d17a; +@define-color green_4 #2ec27e; +@define-color green_5 #26a269; +@define-color yellow_1 #f9f06b; +@define-color yellow_2 #f8e45c; +@define-color yellow_3 #f6d32d; +@define-color yellow_4 #f5c211; +@define-color yellow_5 #e5a50a; +@define-color orange_1 #ffbe6f; +@define-color orange_2 #ffa348; +@define-color orange_3 #ff7800; +@define-color orange_4 #e66100; +@define-color orange_5 #c64600; +@define-color red_1 #f66151; +@define-color red_2 #ed333b; +@define-color red_3 #e01b24; +@define-color red_4 #c01c28; +@define-color red_5 #a51d2d; +@define-color purple_1 #dc8add; +@define-color purple_2 #c061cb; +@define-color purple_3 #9141ac; +@define-color purple_4 #813d9c; +@define-color purple_5 #613583; +@define-color brown_1 #cdab8f; +@define-color brown_2 #b5835a; +@define-color brown_3 #986a44; +@define-color brown_4 #865e3c; +@define-color brown_5 #63452c; +@define-color light_1 #ffffff; +@define-color light_2 #f6f5f4; +@define-color light_3 #deddda; +@define-color light_4 #c0bfbc; +@define-color light_5 #9a9996; +@define-color dark_1 #77767b; +@define-color dark_2 #5e5c64; +@define-color dark_3 #3d3846; +@define-color dark_4 #241f31; +@define-color dark_5 #000000; +.background { color: @window_fg_color; background-color: @window_bg_color; } + +dnd { color: @window_fg_color; } + +.normal-icons { -gtk-icon-size: 16px; } + +.large-icons { -gtk-icon-size: 32px; } + +.osd popover > arrow, .osd popover > contents, popover.touch-selection > arrow, popover.touch-selection > contents, popover.magnifier > arrow, popover.magnifier > contents, toast, .app-notification, dialog-host > dialog.osd sheet, .osd { color: rgba(255, 255, 255, 0.9); border: none; background-color: rgba(0, 0, 0, 0.7); background-clip: padding-box; } + +/* Text selection */ +selection { background-color: alpha(@view_fg_color,0.1); color: transparent; } + +selection:focus-within { background-color: alpha(@accent_bg_color,0.3); } + +:not(window):drop(active):focus, :not(window):drop(active) { border-color: @accent_bg_color; box-shadow: inset 0 0 0 1px @accent_bg_color; caret-color: @accent_bg_color; } + +.navigation-sidebar :not(window):drop(active):focus, .navigation-sidebar :not(window):drop(active), placessidebar :not(window):drop(active):focus, placessidebar :not(window):drop(active), stackswitcher :not(window):drop(active):focus, stackswitcher :not(window):drop(active), expander-widget :not(window):drop(active):focus, expander-widget :not(window):drop(active) { box-shadow: none; } + +/* Outline for low res icons */ +.lowres-icon { -gtk-icon-shadow: 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); } + +/* Drop shadow for large icons */ +.icon-dropshadow { -gtk-icon-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); } + +@keyframes needs_attention { from { background-image: radial-gradient(farthest-side, @accent_color 0%, transparent 0%); } + to { background-image: radial-gradient(farthest-side, @accent_color 95%, transparent); } } + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, stackswitcher > button.needs-attention > image { animation: needs_attention 150ms ease-in; background-image: radial-gradient(farthest-side, @accent_color 96%, transparent); background-size: 6px 6px; background-repeat: no-repeat; background-position: right 3px; } + +stacksidebar row.needs-attention > label:dir(rtl), stackswitcher > button.needs-attention > label:dir(rtl), stackswitcher > button.needs-attention > image:dir(rtl) { background-position: left 3px; } + +avatar { border-radius: 9999px; font-weight: bold; } + +avatar.color1 { background-image: linear-gradient(#83b6ec, #337fdc); color: #cfe1f5; } + +avatar.color2 { background-image: linear-gradient(#7ad9f1, #0f9ac8); color: #caeaf2; } + +avatar.color3 { background-image: linear-gradient(#8de6b1, #29ae74); color: #cef8d8; } + +avatar.color4 { background-image: linear-gradient(#b5e98a, #6ab85b); color: #e6f9d7; } + +avatar.color5 { background-image: linear-gradient(#f8e359, #d29d09); color: #f9f4e1; } + +avatar.color6 { background-image: linear-gradient(#ffcb62, #d68400); color: #ffead1; } + +avatar.color7 { background-image: linear-gradient(#ffa95a, #ed5b00); color: #ffe5c5; } + +avatar.color8 { background-image: linear-gradient(#f78773, #e62d42); color: #f8d2ce; } + +avatar.color9 { background-image: linear-gradient(#e973ab, #e33b6a); color: #fac7de; } + +avatar.color10 { background-image: linear-gradient(#cb78d4, #9945b5); color: #e7c2e8; } + +avatar.color11 { background-image: linear-gradient(#9e91e8, #7a59ca); color: #d5d2f5; } + +avatar.color12 { background-image: linear-gradient(#e3cf9c, #b08952); color: #f2eade; } + +avatar.color13 { background-image: linear-gradient(#be916d, #785336); color: #e5d6ca; } + +avatar.color14 { background-image: linear-gradient(#c0bfbc, #6e6d71); color: #d8d7d3; } + +avatar.contrasted { color: white; } + +avatar.image { background: none; } + +bottom-sheet > dimming { background-color: alpha(@shade_color,2); } + +bottom-sheet > sheet { border-top-left-radius: 12px; border-top-right-radius: 12px; box-shadow: 0 2px 8px 2px rgba(0, 0, 0, 0.07), 0 3px 20px 10px rgba(0, 0, 0, 0.05), 0 6px 32px 16px rgba(0, 0, 0, 0.02), 0 0 0 1px rgba(0, 0, 0, 0.8); } + +bottom-sheet > sheet > drag-handle { background-color: alpha(currentColor,0.25); min-width: 60px; min-height: 4px; margin: 6px; border-radius: 99px; } + +bottom-sheet > sheet > outline { border-top-left-radius: 12px; border-top-right-radius: 12px; box-shadow: inset 1px 0 rgba(255, 255, 255, 0.3), inset -1px 0 rgba(255, 255, 255, 0.3), inset 0 1px rgba(255, 255, 255, 0.3); } + +bottom-sheet > sheet > outline.flush-left { box-shadow: inset -1px 0 rgba(255, 255, 255, 0.3), inset 0 1px rgba(255, 255, 255, 0.3); } + +bottom-sheet > sheet > outline.flush-right { box-shadow: inset 1px 0 rgba(255, 255, 255, 0.3), inset 0 1px rgba(255, 255, 255, 0.3); } + +bottom-sheet > sheet > outline.flush-left.flush-right { box-shadow: inset 0 1px rgba(255, 255, 255, 0.3); } + +notebook > header > tabs > arrow, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay, button { min-height: 24px; min-width: 16px; padding: 5px 10px; border-radius: 6px; font-weight: bold; } + +notebook > header > tabs > arrow, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay, button { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +notebook > header > tabs > arrow:focus:focus-visible, row.spin spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:focus:focus-visible, button:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +.osd notebook > header > tabs > arrow:focus:focus-visible, .osd row.spin spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin .osd spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, .osd row.spin spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin .osd spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd colorswatch#add-color-button > overlay:focus:focus-visible, .osd button:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box popover button.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay, button { background-color: alpha(currentColor,0.1); box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, actionbar > revealer > box popover button.arrow-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:hover, row.spin spinbutton > button.image-button.up:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:hover, button:hover { background-color: alpha(currentColor,0.15); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, actionbar > revealer > box popover button.keyboard-activating.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.keyboard-activating.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.keyboard-activating.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.keyboard-activating.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.keyboard-activating.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.keyboard-activating.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.keyboard-activating.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.keyboard-activating.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.keyboard-activating.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.keyboard-activating.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.keyboard-activating.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.keyboard-activating.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, actionbar > revealer > box popover button.arrow-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow.keyboard-activating, row.spin spinbutton > button.keyboard-activating.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.keyboard-activating.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.keyboard-activating.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.keyboard-activating.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.keyboard-activating.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.keyboard-activating.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.keyboard-activating, notebook > header > tabs > arrow:active, row.spin spinbutton > button.image-button.up:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:active, button.keyboard-activating, button:active { background-color: alpha(currentColor,0.3); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, actionbar > revealer > box popover button.arrow-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked, row.spin spinbutton > button.image-button.up:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:checked, button:checked { background-color: alpha(currentColor,0.3); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, actionbar > revealer > box popover button.arrow-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked:hover, row.spin spinbutton > button.image-button.up:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.down:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:checked:hover, button:checked:hover { background-color: alpha(currentColor,0.35); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, actionbar > revealer > box popover button.arrow-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, actionbar > revealer > box popover button.arrow-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow.keyboard-activating:checked, row.spin spinbutton > button.image-button.up.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.down.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.keyboard-activating:checked, notebook > header > tabs > arrow:checked:active, row.spin spinbutton > button.image-button.up:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.down:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:checked:active, button.keyboard-activating:checked, button:checked:active { background-color: alpha(currentColor,0.4); } + +notebook > header > tabs > arrow:disabled, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:disabled, button:disabled { filter: opacity(0.4); } + +notebook > header > tabs > arrow:disabled label, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child label, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) label, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child label, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) label, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child label, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child label, colorswatch#add-color-button > overlay:disabled label, button:disabled label { filter: none; } + +notebook > header > tabs > arrow.image-button, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.image-button, button.image-button { min-width: 24px; padding-left: 5px; padding-right: 5px; } + +notebook > header > tabs > arrow.text-button, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.text-button, button.text-button { padding-left: 17px; padding-right: 17px; } + +notebook > header > tabs > arrow.text-button.image-button, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.text-button.image-button, notebook > header > tabs > arrow.image-text-button, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.image-text-button, button.text-button.image-button, button.image-text-button { padding-left: 9px; padding-right: 9px; } + +notebook > header > tabs > arrow.text-button.image-button > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box, colorswatch#add-color-button > overlay.text-button.image-button > box, notebook > header > tabs > arrow.text-button.image-button > box > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > box, colorswatch#add-color-button > overlay.text-button.image-button > box > box, notebook > header > tabs > arrow.image-text-button > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box, colorswatch#add-color-button > overlay.image-text-button > box, notebook > header > tabs > arrow.image-text-button > box > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > box, colorswatch#add-color-button > overlay.image-text-button > box > box, button.text-button.image-button > box, button.text-button.image-button > box > box, button.image-text-button > box, button.image-text-button > box > box { border-spacing: 4px; } + +notebook > header > tabs > arrow.text-button.image-button > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > label, colorswatch#add-color-button > overlay.text-button.image-button > box > label, notebook > header > tabs > arrow.text-button.image-button > box > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > box > label, colorswatch#add-color-button > overlay.text-button.image-button > box > box > label, notebook > header > tabs > arrow.image-text-button > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > label, colorswatch#add-color-button > overlay.image-text-button > box > label, notebook > header > tabs > arrow.image-text-button > box > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > box > label, colorswatch#add-color-button > overlay.image-text-button > box > box > label, button.text-button.image-button > box > label, button.text-button.image-button > box > box > label, button.image-text-button > box > label, button.image-text-button > box > box > label { padding-left: 2px; padding-right: 2px; } + +notebook > header > tabs > arrow.arrow-button, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.arrow-button, button.arrow-button { padding-left: 9px; padding-right: 9px; } + +notebook > header > tabs > arrow.arrow-button > box, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box, colorswatch#add-color-button > overlay.arrow-button > box, button.arrow-button > box { border-spacing: 4px; } + +notebook > header > tabs > arrow.arrow-button.text-button > box, row.spin spinbutton > button.arrow-button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box, row.spin spinbutton > button.arrow-button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box, row.spin spinbutton > button.arrow-button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box, row.spin spinbutton > button.arrow-button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box, colorswatch#add-color-button > overlay.arrow-button.text-button > box, button.arrow-button.text-button > box { border-spacing: 4px; } + +dropdown:drop(active) button.combo, combobox:drop(active) button.combo, searchbar > revealer > box .close:drop(active), actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), actionbar > revealer > box button.arrow-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), window.dialog.message.csd .dialog-action-area > button:drop(active), popover.menu box.circular-buttons button.circular.image-button.model:drop(active), popover.menu box.inline-buttons button.image-button.model:drop(active), filechooser #pathbarbox > stack > box > button:drop(active), filechooser #pathbarbox > stack > box > box > button:drop(active), filechooser #pathbarbox > stack > box > menubutton > button:drop(active), button.sidebar-button:drop(active), button.emoji-section.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:drop(active), calendar > header > button:drop(active), actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:drop(active), searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:drop(active), .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:drop(active), headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:drop(active), splitbutton.flat > button:drop(active), splitbutton.flat > menubutton > button:drop(active), menubutton.flat > button:drop(active), button.flat:drop(active), menubutton.osd > button:drop(active), button.osd:drop(active), notebook > header > tabs > arrow:drop(active), row.spin spinbutton > button.image-button.up:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:drop(active), button:drop(active) { color: @accent_bg_color; box-shadow: inset 0 0 0 2px @accent_bg_color; } + +menubutton.osd > button, button.osd { min-width: 32px; min-height: 32px; color: rgba(255, 255, 255, 0.9); background-color: rgba(0, 0, 0, 0.65); box-shadow: 0 0 0 1px currentColor; } + +menubutton.osd > button, button.osd { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +menubutton.osd > button:focus:focus-visible, button.osd:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: 1px; } + +menubutton.osd > button:hover, button.osd:hover { color: white; background-color: alpha(mix(black,currentColor,0.15),0.65); } + +menubutton.osd > button.keyboard-activating, menubutton.osd > button:active, button.osd.keyboard-activating, button.osd:active { color: white; background-color: alpha(mix(black,currentColor,0.25),0.65); } + +menubutton.osd > button:checked, button.osd:checked { background-color: alpha(mix(black,currentColor,0.2),0.65); } + +menubutton.osd > button:checked:hover, button.osd:checked:hover { background-color: alpha(mix(black,currentColor,0.25),0.65); } + +menubutton.osd > button.keyboard-activating:checked, menubutton.osd > button:checked:active, button.osd.keyboard-activating:checked, button.osd:checked:active { background-color: alpha(mix(black,currentColor,0.35),0.65); } + +menubutton.osd > button:focus:focus-visible, .osd button.osd:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +actionbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button, splitbutton.suggested-action > menubutton > button, splitbutton.destructive-action > button, splitbutton.destructive-action > menubutton > button, splitbutton.opaque > button, splitbutton.opaque > menubutton > button, menubutton.suggested-action > button, menubutton.destructive-action > button, menubutton.opaque > button, button.suggested-action, button.destructive-action, button.opaque { box-shadow: none; } + +actionbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button, splitbutton.suggested-action > menubutton > button, splitbutton.destructive-action > button, splitbutton.destructive-action > menubutton > button, splitbutton.opaque > button, splitbutton.opaque > menubutton > button, menubutton.suggested-action > button, menubutton.destructive-action > button, menubutton.opaque > button, button.suggested-action, button.destructive-action, button.opaque { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +actionbar > revealer > box menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:focus:focus-visible, splitbutton.suggested-action > menubutton > button:focus:focus-visible, splitbutton.destructive-action > button:focus:focus-visible, splitbutton.destructive-action > menubutton > button:focus:focus-visible, splitbutton.opaque > button:focus:focus-visible, splitbutton.opaque > menubutton > button:focus:focus-visible, menubutton.suggested-action > button:focus:focus-visible, menubutton.destructive-action > button:focus:focus-visible, menubutton.opaque > button:focus:focus-visible, button.suggested-action:focus:focus-visible, button.destructive-action:focus:focus-visible, button.opaque:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: 1px; } + +.osd actionbar > revealer > box menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd actionbar > revealer > box menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd actionbar > revealer > box menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd splitbutton.suggested-action > button:focus:focus-visible, .osd splitbutton.suggested-action > menubutton > button:focus:focus-visible, .osd splitbutton.destructive-action > button:focus:focus-visible, .osd splitbutton.destructive-action > menubutton > button:focus:focus-visible, .osd splitbutton.opaque > button:focus:focus-visible, .osd splitbutton.opaque > menubutton > button:focus:focus-visible, .osd menubutton.suggested-action > button:focus:focus-visible, .osd menubutton.destructive-action > button:focus:focus-visible, .osd menubutton.opaque > button:focus:focus-visible, .osd button.suggested-action:focus:focus-visible, .osd button.destructive-action:focus:focus-visible, .osd button.opaque:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +actionbar > revealer > box menubutton.suggested-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:hover, splitbutton.suggested-action > menubutton > button:hover, splitbutton.destructive-action > button:hover, splitbutton.destructive-action > menubutton > button:hover, splitbutton.opaque > button:hover, splitbutton.opaque > menubutton > button:hover, menubutton.suggested-action > button:hover, menubutton.destructive-action > button:hover, menubutton.opaque > button:hover, button.suggested-action:hover, button.destructive-action:hover, button.opaque:hover { background-image: image(alpha(currentColor,0.1)); } + +actionbar > revealer > box menubutton.suggested-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button.keyboard-activating, splitbutton.suggested-action > menubutton > button.keyboard-activating, splitbutton.destructive-action > button.keyboard-activating, splitbutton.destructive-action > menubutton > button.keyboard-activating, splitbutton.opaque > button.keyboard-activating, splitbutton.opaque > menubutton > button.keyboard-activating, menubutton.suggested-action > button.keyboard-activating, menubutton.destructive-action > button.keyboard-activating, menubutton.opaque > button.keyboard-activating, button.keyboard-activating.suggested-action, button.keyboard-activating.destructive-action, button.keyboard-activating.opaque, actionbar > revealer > box menubutton.suggested-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:active, splitbutton.suggested-action > menubutton > button:active, splitbutton.destructive-action > button:active, splitbutton.destructive-action > menubutton > button:active, splitbutton.opaque > button:active, splitbutton.opaque > menubutton > button:active, menubutton.suggested-action > button:active, menubutton.destructive-action > button:active, menubutton.opaque > button:active, button.suggested-action:active, button.destructive-action:active, button.opaque:active { background-image: image(rgba(0, 0, 0, 0.2)); } + +actionbar > revealer > box menubutton.suggested-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:checked, splitbutton.suggested-action > menubutton > button:checked, splitbutton.destructive-action > button:checked, splitbutton.destructive-action > menubutton > button:checked, splitbutton.opaque > button:checked, splitbutton.opaque > menubutton > button:checked, menubutton.suggested-action > button:checked, menubutton.destructive-action > button:checked, menubutton.opaque > button:checked, button.suggested-action:checked, button.destructive-action:checked, button.opaque:checked { background-image: image(rgba(0, 0, 0, 0.15)); } + +actionbar > revealer > box menubutton.suggested-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:checked:hover, splitbutton.suggested-action > menubutton > button:checked:hover, splitbutton.destructive-action > button:checked:hover, splitbutton.destructive-action > menubutton > button:checked:hover, splitbutton.opaque > button:checked:hover, splitbutton.opaque > menubutton > button:checked:hover, menubutton.suggested-action > button:checked:hover, menubutton.destructive-action > button:checked:hover, menubutton.opaque > button:checked:hover, button.suggested-action:checked:hover, button.destructive-action:checked:hover, button.opaque:checked:hover { background-image: image(rgba(0, 0, 0, 0.05)); } + +actionbar > revealer > box menubutton.suggested-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button.keyboard-activating:checked, splitbutton.suggested-action > menubutton > button.keyboard-activating:checked, splitbutton.destructive-action > button.keyboard-activating:checked, splitbutton.destructive-action > menubutton > button.keyboard-activating:checked, splitbutton.opaque > button.keyboard-activating:checked, splitbutton.opaque > menubutton > button.keyboard-activating:checked, menubutton.suggested-action > button.keyboard-activating:checked, menubutton.destructive-action > button.keyboard-activating:checked, menubutton.opaque > button.keyboard-activating:checked, button.suggested-action.keyboard-activating:checked, button.destructive-action.keyboard-activating:checked, button.opaque.keyboard-activating:checked, actionbar > revealer > box menubutton.suggested-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:checked:active, splitbutton.suggested-action > menubutton > button:checked:active, splitbutton.destructive-action > button:checked:active, splitbutton.destructive-action > menubutton > button:checked:active, splitbutton.opaque > button:checked:active, splitbutton.opaque > menubutton > button:checked:active, menubutton.suggested-action > button:checked:active, menubutton.destructive-action > button:checked:active, menubutton.opaque > button:checked:active, button.suggested-action:checked:active, button.destructive-action:checked:active, button.opaque:checked:active { background-image: image(rgba(0, 0, 0, 0.3)); } + +button.opaque { background-color: mix(@window_bg_color,@window_fg_color,0.15); color: @window_fg_color; } + +button.destructive-action { color: @destructive_fg_color; } + +button.destructive-action, button.destructive-action:checked { background-color: @destructive_bg_color; } + +button.suggested-action { color: @accent_fg_color; } + +button.suggested-action, button.suggested-action:checked { background-color: @accent_bg_color; } + +searchbar > revealer > box .close, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow, window.dialog.message.csd .dialog-action-area > button, popover.menu box.circular-buttons button.circular.image-button.model, popover.menu box.inline-buttons button.image-button.model, filechooser #pathbarbox > stack > box > button, filechooser #pathbarbox > stack > box > box > button, filechooser #pathbarbox > stack > box > menubutton > button, button.sidebar-button, button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close, calendar > header > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, splitbutton.flat > button, splitbutton.flat > menubutton > button, menubutton.flat > button, button.flat { background: transparent; box-shadow: none; } + +searchbar > revealer > box .close, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow, window.dialog.message.csd .dialog-action-area > button, popover.menu box.circular-buttons button.circular.image-button.model, popover.menu box.inline-buttons button.image-button.model, filechooser #pathbarbox > stack > box > button, filechooser #pathbarbox > stack > box > box > button, filechooser #pathbarbox > stack > box > menubutton > button, button.sidebar-button, button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close, calendar > header > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, splitbutton.flat > button, splitbutton.flat > menubutton > button, menubutton.flat > button, button.flat { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +searchbar > revealer > box .close:focus:focus-visible, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, actionbar > revealer > box button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:focus:focus-visible, window.dialog.message.csd .dialog-action-area > button:focus:focus-visible, popover.menu box.circular-buttons button.circular.image-button.model:focus:focus-visible, popover.menu box.inline-buttons button.image-button.model:focus:focus-visible, filechooser #pathbarbox > stack > box > button:focus:focus-visible, filechooser #pathbarbox > stack > box > box > button:focus:focus-visible, filechooser #pathbarbox > stack > box > menubutton > button:focus:focus-visible, button.sidebar-button:focus:focus-visible, button.emoji-section.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:focus:focus-visible, calendar > header > button:focus:focus-visible, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, splitbutton.flat > button:focus:focus-visible, splitbutton.flat > menubutton > button:focus:focus-visible, menubutton.flat > button:focus:focus-visible, button.flat:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +.osd searchbar > revealer > box .close:focus:focus-visible, searchbar > revealer > box .osd .close:focus:focus-visible, .osd actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, actionbar > revealer > box .osd menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, searchbar > revealer > box .osd menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .toolbar .osd menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, headerbar .osd menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd actionbar > revealer > box button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd actionbar > revealer > box button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd actionbar > revealer > box button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd notebook > header > tabs > arrow:focus:focus-visible, .osd window.dialog.message.csd .dialog-action-area > button:focus:focus-visible, window.dialog.message.csd .osd .dialog-action-area > button:focus:focus-visible, .osd popover.menu box.circular-buttons button.circular.image-button.model:focus:focus-visible, popover.menu box.circular-buttons .osd button.circular.image-button.model:focus:focus-visible, .osd popover.menu box.inline-buttons button.image-button.model:focus:focus-visible, popover.menu box.inline-buttons .osd button.image-button.model:focus:focus-visible, .osd filechooser #pathbarbox > stack > box > button:focus:focus-visible, filechooser .osd #pathbarbox > stack > box > button:focus:focus-visible, .osd filechooser #pathbarbox > stack > box > box > button:focus:focus-visible, filechooser .osd #pathbarbox > stack > box > box > button:focus:focus-visible, .osd filechooser #pathbarbox > stack > box > menubutton > button:focus:focus-visible, filechooser .osd #pathbarbox > stack > box > menubutton > button:focus:focus-visible, .osd button.sidebar-button:focus:focus-visible, .osd button.emoji-section.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd infobar .close:focus:focus-visible, infobar .osd .close:focus:focus-visible, .osd calendar > header > button:focus:focus-visible, .osd actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, actionbar > revealer > box .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, searchbar > revealer > box .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .toolbar .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, headerbar .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .osd searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .osd .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, actionbar > revealer > box .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, searchbar > revealer > box .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .toolbar .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .osd headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, headerbar .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .osd splitbutton.flat > button:focus:focus-visible, .osd splitbutton.flat > menubutton > button:focus:focus-visible, .osd menubutton.flat > button:focus:focus-visible, .osd button.flat:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +searchbar > revealer > box .close:hover, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, actionbar > revealer > box button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:hover, window.dialog.message.csd .dialog-action-area > button:hover, popover.menu box.circular-buttons button.circular.image-button.model:hover, popover.menu box.inline-buttons button.image-button.model:hover, filechooser #pathbarbox > stack > box > button:hover, filechooser #pathbarbox > stack > box > box > button:hover, filechooser #pathbarbox > stack > box > menubutton > button:hover, button.sidebar-button:hover, button.emoji-section.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:hover, calendar > header > button:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, splitbutton.flat > button:hover, splitbutton.flat > menubutton > button:hover, menubutton.flat > button:hover, searchbar > revealer > box .keyboard-activating.close, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, actionbar > revealer > box button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.keyboard-activating.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.keyboard-activating.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow.keyboard-activating, window.dialog.message.csd .dialog-action-area > button.keyboard-activating, popover.menu box.circular-buttons button.keyboard-activating.circular.image-button.model, popover.menu box.inline-buttons button.keyboard-activating.image-button.model, filechooser #pathbarbox > stack > box > button.keyboard-activating, filechooser #pathbarbox > stack > box > box > button.keyboard-activating, filechooser #pathbarbox > stack > box > menubutton > button.keyboard-activating, button.keyboard-activating.sidebar-button, button.keyboard-activating.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .keyboard-activating.close, calendar > header > button.keyboard-activating, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, splitbutton.flat > button.keyboard-activating, splitbutton.flat > menubutton > button.keyboard-activating, menubutton.flat > button.keyboard-activating, searchbar > revealer > box .close:active, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, actionbar > revealer > box button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:active, window.dialog.message.csd .dialog-action-area > button:active, popover.menu box.circular-buttons button.circular.image-button.model:active, popover.menu box.inline-buttons button.image-button.model:active, filechooser #pathbarbox > stack > box > button:active, filechooser #pathbarbox > stack > box > box > button:active, filechooser #pathbarbox > stack > box > menubutton > button:active, button.sidebar-button:active, button.emoji-section.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:active, calendar > header > button:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, splitbutton.flat > button:active, splitbutton.flat > menubutton > button:active, menubutton.flat > button:active, searchbar > revealer > box .close:checked, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, actionbar > revealer > box button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked, window.dialog.message.csd .dialog-action-area > button:checked, popover.menu box.circular-buttons button.circular.image-button.model:checked, popover.menu box.inline-buttons button.image-button.model:checked, filechooser #pathbarbox > stack > box > button:checked, filechooser #pathbarbox > stack > box > box > button:checked, filechooser #pathbarbox > stack > box > menubutton > button:checked, button.sidebar-button:checked, button.emoji-section.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:checked, calendar > header > button:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, splitbutton.flat > button:checked, splitbutton.flat > menubutton > button:checked, menubutton.flat > button:checked, button.flat:hover, button.flat.keyboard-activating, button.flat:active, button.flat:checked { box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +searchbar > revealer > box .close:hover, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, actionbar > revealer > box button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:hover, window.dialog.message.csd .dialog-action-area > button:hover, popover.menu box.circular-buttons button.circular.image-button.model:hover, popover.menu box.inline-buttons button.image-button.model:hover, filechooser #pathbarbox > stack > box > button:hover, filechooser #pathbarbox > stack > box > box > button:hover, filechooser #pathbarbox > stack > box > menubutton > button:hover, button.sidebar-button:hover, button.emoji-section.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:hover, calendar > header > button:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, splitbutton.flat > button:hover, splitbutton.flat > menubutton > button:hover, menubutton.flat > button:hover, button.flat:hover { background: alpha(currentColor,0.07); } + +searchbar > revealer > box .keyboard-activating.close, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, actionbar > revealer > box button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.keyboard-activating.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.keyboard-activating.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow.keyboard-activating, window.dialog.message.csd .dialog-action-area > button.keyboard-activating, popover.menu box.circular-buttons button.keyboard-activating.circular.image-button.model, popover.menu box.inline-buttons button.keyboard-activating.image-button.model, filechooser #pathbarbox > stack > box > button.keyboard-activating, filechooser #pathbarbox > stack > box > box > button.keyboard-activating, filechooser #pathbarbox > stack > box > menubutton > button.keyboard-activating, button.keyboard-activating.sidebar-button, button.keyboard-activating.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .keyboard-activating.close, calendar > header > button.keyboard-activating, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, splitbutton.flat > button.keyboard-activating, splitbutton.flat > menubutton > button.keyboard-activating, menubutton.flat > button.keyboard-activating, searchbar > revealer > box .close:active, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, actionbar > revealer > box button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:active, window.dialog.message.csd .dialog-action-area > button:active, popover.menu box.circular-buttons button.circular.image-button.model:active, popover.menu box.inline-buttons button.image-button.model:active, filechooser #pathbarbox > stack > box > button:active, filechooser #pathbarbox > stack > box > box > button:active, filechooser #pathbarbox > stack > box > menubutton > button:active, button.sidebar-button:active, button.emoji-section.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:active, calendar > header > button:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, splitbutton.flat > button:active, splitbutton.flat > menubutton > button:active, menubutton.flat > button:active, button.flat.keyboard-activating, button.flat:active { background: alpha(currentColor,0.16); } + +searchbar > revealer > box .close:checked, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, actionbar > revealer > box button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked, window.dialog.message.csd .dialog-action-area > button:checked, popover.menu box.circular-buttons button.circular.image-button.model:checked, popover.menu box.inline-buttons button.image-button.model:checked, filechooser #pathbarbox > stack > box > button:checked, filechooser #pathbarbox > stack > box > box > button:checked, filechooser #pathbarbox > stack > box > menubutton > button:checked, button.sidebar-button:checked, button.emoji-section.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:checked, calendar > header > button:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, splitbutton.flat > button:checked, splitbutton.flat > menubutton > button:checked, menubutton.flat > button:checked, button.flat:checked { background: alpha(currentColor,0.1); } + +searchbar > revealer > box .close:checked:hover, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, actionbar > revealer > box button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked:hover, window.dialog.message.csd .dialog-action-area > button:checked:hover, popover.menu box.circular-buttons button.circular.image-button.model:checked:hover, popover.menu box.inline-buttons button.image-button.model:checked:hover, filechooser #pathbarbox > stack > box > button:checked:hover, filechooser #pathbarbox > stack > box > box > button:checked:hover, filechooser #pathbarbox > stack > box > menubutton > button:checked:hover, button.sidebar-button:checked:hover, button.emoji-section.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:checked:hover, calendar > header > button:checked:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:hover, splitbutton.flat > button:checked:hover, splitbutton.flat > menubutton > button:checked:hover, menubutton.flat > button:checked:hover, button.flat:checked:hover { background: alpha(currentColor,0.13); } + +searchbar > revealer > box .close.keyboard-activating:checked, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, actionbar > revealer > box button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow.keyboard-activating:checked, window.dialog.message.csd .dialog-action-area > button.keyboard-activating:checked, popover.menu box.circular-buttons button.circular.image-button.model.keyboard-activating:checked, popover.menu box.inline-buttons button.image-button.model.keyboard-activating:checked, filechooser #pathbarbox > stack > box > button.keyboard-activating:checked, filechooser #pathbarbox > stack > box > box > button.keyboard-activating:checked, filechooser #pathbarbox > stack > box > menubutton > button.keyboard-activating:checked, button.sidebar-button.keyboard-activating:checked, button.emoji-section.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close.keyboard-activating:checked, calendar > header > button.keyboard-activating:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating:checked, splitbutton.flat > button.keyboard-activating:checked, splitbutton.flat > menubutton > button.keyboard-activating:checked, menubutton.flat > button.keyboard-activating:checked, searchbar > revealer > box .close:checked:active, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, actionbar > revealer > box button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked:active, window.dialog.message.csd .dialog-action-area > button:checked:active, popover.menu box.circular-buttons button.circular.image-button.model:checked:active, popover.menu box.inline-buttons button.image-button.model:checked:active, filechooser #pathbarbox > stack > box > button:checked:active, filechooser #pathbarbox > stack > box > box > button:checked:active, filechooser #pathbarbox > stack > box > menubutton > button:checked:active, button.sidebar-button:checked:active, button.emoji-section.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:checked:active, calendar > header > button:checked:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:active, splitbutton.flat > button:checked:active, splitbutton.flat > menubutton > button:checked:active, menubutton.flat > button:checked:active, button.flat.keyboard-activating:checked, button.flat:checked:active { background: alpha(currentColor,0.19); } + +searchbar > revealer > box .close:disabled:not(:checked), actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), actionbar > revealer > box button.arrow-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:disabled:not(:checked):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:disabled:not(:checked):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:disabled:not(:checked), window.dialog.message.csd .dialog-action-area > button:disabled:not(:checked), popover.menu box.circular-buttons button.circular.image-button.model:disabled:not(:checked), popover.menu box.inline-buttons button.image-button.model:disabled:not(:checked), filechooser #pathbarbox > stack > box > button:disabled:not(:checked), filechooser #pathbarbox > stack > box > box > button:disabled:not(:checked), filechooser #pathbarbox > stack > box > menubutton > button:disabled:not(:checked), button.sidebar-button:disabled:not(:checked), button.emoji-section.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:disabled:not(:checked), calendar > header > button:disabled:not(:checked), actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled:not(:checked), searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled:not(:checked), .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled:not(:checked), headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled:not(:checked), splitbutton.flat > button:disabled:not(:checked), splitbutton.flat > menubutton > button:disabled:not(:checked), menubutton.flat > button:disabled:not(:checked), button.flat:disabled:not(:checked) { filter: opacity(0.3); } + +stackswitcher > button > label { padding: 0 6px; margin: 0 -6px; } + +stackswitcher > button > image { padding: 3px 6px; margin: -3px -6px; } + +stackswitcher > button.text-button { min-width: 100px; } + +button.font separator { background-color: transparent; } + +button.font > box { border-spacing: 6px; } + +button.font > box > box > label { font-weight: bold; } + +row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), menubutton.circular > button, button.circular { min-width: 34px; min-height: 34px; padding: 0; border-radius: 9999px; } + +row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child label, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child label, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child label, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) label, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child label, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child label, button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) label, menubutton.circular > button label, button.circular label { padding: 0; } + +menubutton.pill > button, button.pill { padding: 10px 32px; border-radius: 9999px; } + +button.card { background-color: @card_bg_color; background-clip: padding-box; font-weight: inherit; padding: 0; } + +button.card { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +button.card:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -1px; } + +button.card:hover { background-image: image(alpha(currentColor,0.04)); } + +button.card.keyboard-activating, button.card:active { background-image: image(alpha(currentColor,0.08)); } + +button.card:checked { background-color: @card_bg_color; background-image: image(alpha(@accent_bg_color,0.25)); } + +button.card:checked:hover { background-image: image(alpha(@accent_bg_color,0.32)); } + +button.card.keyboard-activating:checked, button.card:checked:active { background-image: image(alpha(@accent_bg_color,0.39)); } + +button.card.has-open-popup:checked { background-image: image(alpha(@accent_bg_color,0.32)); } + +.osd button.card:checked { background-color: alpha(currentColor,0.1); } + +button.card:drop(active) { color: @accent_bg_color; box-shadow: inset 0 0 0 1px @accent_bg_color; } + +popover.menu modelbutton, button.link, button.link:hover, button.link:active, button.link:checked, columnview > header > button, treeview.view > header > button, window.print treeview.dialog-action-box > header > button { background-color: transparent; } + +button.color { padding: 5px; } + +button.color > colorswatch:only-child { border-radius: 2.5px; } + +button.color > colorswatch:only-child > overlay { border-radius: 2px; } + +button.color > colorswatch:only-child:disabled { filter: none; } + +button.color > colorswatch.light:only-child > overlay { border-color: alpha(@view_fg_color,0.1); } + +menubutton.osd { background: none; color: inherit; } + +menubutton.suggested-action { background-color: @accent_bg_color; color: @accent_fg_color; } + +menubutton.destructive-action { background-color: @destructive_bg_color; color: @destructive_fg_color; } + +menubutton.opaque { background-color: mix(@window_bg_color,@window_fg_color,0.15); color: @window_fg_color; } + +menubutton.suggested-action, menubutton.destructive-action, menubutton.opaque { border-radius: 6px; } + +menubutton.suggested-action.circular, menubutton.suggested-action.pill, menubutton.destructive-action.circular, menubutton.destructive-action.pill, menubutton.opaque.circular, menubutton.opaque.pill { border-radius: 9999px; } + +menubutton.suggested-action > button, menubutton.suggested-action > button:checked, menubutton.destructive-action > button, menubutton.destructive-action > button:checked, menubutton.opaque > button, menubutton.opaque > button:checked { background-color: transparent; color: inherit; } + +menubutton.image-button > button { min-width: 24px; padding-left: 5px; padding-right: 5px; } + +menubutton.card > button { border-radius: 12px; } + +menubutton arrow { min-height: 16px; min-width: 16px; } + +menubutton arrow.none { -gtk-icon-source: -gtk-icontheme("open-menu-symbolic"); } + +menubutton arrow.down { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +menubutton arrow.up { -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +menubutton arrow.left { -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); } + +menubutton arrow.right { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +splitbutton { border-radius: 6px; } + +splitbutton, splitbutton > separator { transition: background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-property: background; } + +splitbutton > separator { margin-top: 6px; margin-bottom: 6px; background: none; } + +splitbutton > menubutton > button { padding-left: 4px; padding-right: 4px; } + +splitbutton.image-button > button { min-width: 24px; padding-left: 5px; padding-right: 5px; } + +splitbutton.text-button.image-button > button, splitbutton.image-text-button > button { padding-left: 9px; padding-right: 9px; } + +splitbutton.text-button.image-button > button > box, splitbutton.image-text-button > button > box { border-spacing: 6px; } + +splitbutton:disabled { filter: opacity(0.4); } + +splitbutton:disabled > button, splitbutton:disabled > menubutton > button { filter: none; } + +splitbutton > button:dir(ltr), splitbutton > menubutton > button:dir(rtl) { border-top-right-radius: 0; border-bottom-right-radius: 0; margin-right: -1px; } + +splitbutton > button:dir(rtl), splitbutton > menubutton > button:dir(ltr) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, splitbutton.flat > separator { background: alpha(currentColor,0.8); } + +actionbar > revealer > box splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.flat:hover, splitbutton.flat:active, splitbutton.flat:checked { background: alpha(currentColor,0.07); box-shadow: inset 0 0 0 1px alpha(currentColor,0.25); } + +actionbar > revealer > box splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, actionbar > revealer > box splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, actionbar > revealer > box splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, splitbutton.flat:hover > separator, splitbutton.flat:active > separator, splitbutton.flat:checked > separator { background: none; } + +actionbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.flat:disabled { filter: opacity(0.3); } + +actionbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled, searchbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled, .toolbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled, headerbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled, actionbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled, searchbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled, .toolbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled, headerbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled, splitbutton.flat:disabled > button:disabled, splitbutton.flat:disabled > menubutton > button:disabled { filter: none; } + +actionbar > revealer > box splitbutton:focus-within:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:focus-within:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:focus-within:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:focus-within:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, splitbutton.flat:focus-within:focus-visible > separator { background: none; } + +actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, splitbutton.flat > button, splitbutton.flat > menubutton > button { border-radius: 6px; } + +splitbutton.suggested-action { background-color: @accent_bg_color; color: @accent_fg_color; } + +splitbutton.destructive-action { background-color: @destructive_bg_color; color: @destructive_fg_color; } + +splitbutton.opaque { background-color: mix(@window_bg_color,@window_fg_color,0.15); color: @window_fg_color; } + +splitbutton.suggested-action > button, splitbutton.suggested-action > button:checked, splitbutton.suggested-action > menubutton > button, splitbutton.suggested-action > menubutton > button:checked, splitbutton.destructive-action > button, splitbutton.destructive-action > button:checked, splitbutton.destructive-action > menubutton > button, splitbutton.destructive-action > menubutton > button:checked, splitbutton.opaque > button, splitbutton.opaque > button:checked, splitbutton.opaque > menubutton > button, splitbutton.opaque > menubutton > button:checked { color: inherit; background-color: transparent; } + +splitbutton.suggested-action > menubutton > button:dir(ltr), splitbutton.destructive-action > menubutton > button:dir(ltr), splitbutton.opaque > menubutton > button:dir(ltr) { box-shadow: inset 1px 0 alpha(currentColor,0.8); } + +splitbutton.suggested-action > menubutton > button:dir(rtl), splitbutton.destructive-action > menubutton > button:dir(rtl), splitbutton.opaque > menubutton > button:dir(rtl) { box-shadow: inset -1px 0 alpha(currentColor,0.8); } + +splitbutton > menubutton > button > arrow.none { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +buttoncontent > box { border-spacing: 6px; } + +buttoncontent > box > label { font-weight: bold; } + +buttoncontent > box > label:dir(ltr) { padding-right: 2px; } + +buttoncontent > box > label:dir(rtl) { padding-left: 2px; } + +.arrow-button > box > buttoncontent > box > label:dir(ltr), splitbutton > button > buttoncontent > box > label:dir(ltr) { padding-right: 0; } + +.arrow-button > box > buttoncontent > box > label:dir(rtl), splitbutton > button > buttoncontent > box > label:dir(rtl) { padding-left: 0; } + +tabbutton label { font-weight: 800; font-size: 8pt; } + +tabbutton label.small { font-size: 6pt; } + +tabbutton indicatorbin > indicator, tabbutton indicatorbin > mask { transform: translate(-1px, 1px); } + +calendar { color: @view_fg_color; background-clip: padding-box; border: 1px solid alpha(currentColor,0.5); font-feature-settings: "tnum"; } + +calendar > header { border-bottom: 1px solid alpha(currentColor,0.5); } + +calendar > header > button { border-radius: 0; } + +calendar > grid { padding-left: 3px; padding-bottom: 3px; } + +calendar > grid > label.today { box-shadow: inset 0px -2px alpha(currentColor,0.5); } + +calendar > grid > label.today:selected { box-shadow: none; } + +calendar > grid > label { margin-top: 3px; margin-right: 3px; } + +calendar > grid > label { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +calendar > grid > label:focus { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +calendar > grid > label.day-number { padding: 3px; } + +calendar > grid > label.day-number:checked { border-radius: 6px; background-color: alpha(@accent_bg_color,0.3); } + +calendar > grid > label.day-number:selected { border-radius: 6px; background-color: @accent_bg_color; color: @accent_fg_color; } + +calendar > grid > label.day-number.other-month { color: alpha(currentColor,0.3); } + +checkbutton { border-spacing: 4px; border-radius: 9px; padding: 3px; } + +checkbutton { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +checkbutton:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +.osd checkbutton:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +checkbutton.text-button { padding: 4px; } + +check, radio { min-height: 14px; min-width: 14px; -gtk-icon-size: 14px; padding: 3px; box-shadow: inset 0 0 0 2px alpha(currentColor,0.5); } + +check:not(:checked):not(:indeterminate):hover, radio:not(:checked):not(:indeterminate):hover { box-shadow: inset 0 0 0 2px alpha(currentColor,0.6); } + +check:not(:checked):not(:indeterminate):active, radio:not(:checked):not(:indeterminate):active { background-color: alpha(currentColor,0.6); box-shadow: none; } + +check:checked, check:indeterminate, radio:checked, radio:indeterminate { background-color: @accent_bg_color; color: @accent_fg_color; box-shadow: none; } + +check:checked:hover, check:indeterminate:hover, radio:checked:hover, radio:indeterminate:hover { background-image: image(alpha(currentColor,0.1)); } + +check:checked:active, check:indeterminate:active, radio:checked:active, radio:indeterminate:active { background-image: image(rgba(0, 0, 0, 0.2)); } + +check:disabled, radio:disabled { filter: opacity(0.4); } + +.osd check:checked, .osd check:indeterminate, .osd radio:checked, .osd radio:indeterminate { background-color: rgba(255, 255, 255, 0.75); color: rgba(0, 0, 0, 0.75); } + +check { border-radius: 6px; } + +check:checked { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/check-symbolic.symbolic.png")), -gtk-recolor(url("assets/check@2-symbolic.symbolic.png"))); } + +radio { border-radius: 100%; } + +radio:checked { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/bullet-symbolic.symbolic.png")), -gtk-recolor(url("assets/bullet@2-symbolic.symbolic.png"))); } + +check:indeterminate, radio:indeterminate { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/dash-symbolic.symbolic.png")), -gtk-recolor(url("assets/dash@2-symbolic.symbolic.png"))); } + +checkbutton.selection-mode { border-radius: 100px; } + +checkbutton.selection-mode check, checkbutton.selection-mode radio { padding: 7px; border-radius: 100px; } + +checkbutton.selection-mode label:dir(ltr) { margin-right: 6px; } + +checkbutton.selection-mode label:dir(rtl) { margin-left: 6px; } + +colorswatch { outline: 0 solid transparent; outline-offset: 6px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +colorswatch:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 4px; outline-offset: -2px; } + +colorswatch.top { border-top-left-radius: 6.5px; border-top-right-radius: 6.5px; } + +colorswatch.top > overlay { border-top-left-radius: 6px; border-top-right-radius: 6px; } + +colorswatch.bottom { border-bottom-left-radius: 6.5px; border-bottom-right-radius: 6.5px; } + +colorswatch.bottom > overlay { border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; } + +colorswatch.left, colorswatch:first-child:not(.top) { border-top-left-radius: 6.5px; border-bottom-left-radius: 6.5px; } + +colorswatch.left > overlay, colorswatch:first-child:not(.top) > overlay { border-top-left-radius: 6px; border-bottom-left-radius: 6px; } + +colorswatch.right, colorswatch:last-child:not(.bottom) { border-top-right-radius: 6.5px; border-bottom-right-radius: 6.5px; } + +colorswatch.right > overlay, colorswatch:last-child:not(.bottom) > overlay { border-top-right-radius: 6px; border-bottom-right-radius: 6px; } + +colorswatch > overlay { box-shadow: inset 0 0 0 1px alpha(@view_fg_color,0.5); } + +colorswatch.dark > overlay { color: white; } + +colorswatch.light > overlay { color: rgba(0, 0, 0, 0.75); } + +colorswatch.light:drop(active) > overlay { box-shadow: inset 0 0 0 2px @accent_bg_color; } + +colorswatch.dark:drop(active) > overlay { box-shadow: inset 0 0 0 2px @accent_bg_color; } + +colorswatch#add-color-button > overlay { border-radius: 6px 0 0 6px; } + +colorswatch#add-color-button:only-child > overlay { border-radius: 6px; } + +colorswatch:disabled { filter: opacity(0.4); } + +colorswatch#editor-color-sample { border-radius: 6px; } + +colorswatch#editor-color-sample > overlay { border-radius: 6.5px; } + +plane { outline: 0 solid transparent; outline-offset: 6px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +plane:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: 2px; } + +colorchooser .popover.osd { border-radius: 12px; } + +columnview, treeview.view, window.print treeview.dialog-action-box { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +columnview:focus:focus-visible, treeview.view:focus:focus-visible, window.print treeview.dialog-action-box:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +columnview:drop(active), treeview.view:drop(active), window.print treeview.dialog-action-box:drop(active) { box-shadow: none; } + +columnview > header > button, treeview.view > header > button, window.print treeview.dialog-action-box > header > button { padding-top: 3px; padding-bottom: 3px; padding-left: 6px; padding-right: 6px; border-radius: 0; box-shadow: none; line-height: 100%; border-left: 1px solid transparent; } + +columnview > header > button:first-child, treeview.view > header > button:first-child, window.print treeview.dialog-action-box > header > button:first-child { border-left-width: 0; } + +columnview > header > button > box, treeview.view > header > button > box, window.print treeview.dialog-action-box > header > button > box { color: alpha(currentColor,0.6); font-weight: 700; font-size: 9pt; border-spacing: 6px; } + +columnview > header > button:hover > box, treeview.view > header > button:hover > box, window.print treeview.dialog-action-box > header > button:hover > box { color: alpha(currentColor,0.9); box-shadow: none; } + +columnview > header > button:active > box, treeview.view > header > button:active > box, window.print treeview.dialog-action-box > header > button:active > box { color: currentColor; } + +columnview > header > button sort-indicator, treeview.view > header > button sort-indicator, window.print treeview.dialog-action-box > header > button sort-indicator { min-height: 16px; min-width: 16px; } + +columnview > header > button sort-indicator.ascending, treeview.view > header > button sort-indicator.ascending, window.print treeview.dialog-action-box > header > button sort-indicator.ascending { -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +columnview > header > button sort-indicator.descending, treeview.view > header > button sort-indicator.descending, window.print treeview.dialog-action-box > header > button sort-indicator.descending { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +columnview button.dnd:active, columnview button.dnd:selected, columnview button.dnd:hover, columnview button.dnd, treeview.view button.dnd, window.print treeview.dialog-action-box button.dnd, columnview header.button.dnd:active, columnview header.button.dnd:selected, columnview header.button.dnd:hover, columnview header.button.dnd, treeview.view header.button.dnd, window.print treeview.dialog-action-box header.button.dnd { color: @accent_fg_color; background-color: @accent_bg_color; transition: none; } + +columnview.view > listview.view, treeview.view > listview.view, window.print columnview.dialog-action-box > listview.view, window.print treeview.dialog-action-box > listview.view, window.print columnview.view > listview.dialog-action-box, window.print treeview.view > listview.dialog-action-box, window.print columnview.dialog-action-box > listview.dialog-action-box, window.print treeview.dialog-action-box > listview.dialog-action-box { background: none; color: inherit; } + +columnview > listview > row, treeview.view > listview > row, window.print treeview.dialog-action-box > listview > row { padding: 0; } + +columnview > listview > row > cell, treeview.view > listview > row > cell, window.print treeview.dialog-action-box > listview > row > cell { padding: 8px 6px; } + +columnview > listview > row > cell:not(:first-child), treeview.view > listview > row > cell:not(:first-child), window.print treeview.dialog-action-box > listview > row > cell:not(:first-child) { border-left: 1px solid transparent; } + +columnview.column-separators > listview > row > cell, treeview.column-separators.view > listview > row > cell, window.print treeview.column-separators.dialog-action-box > listview > row > cell, columnview.column-separators > header > button, treeview.column-separators.view > header > button, window.print treeview.column-separators.dialog-action-box > header > button { border-left-color: alpha(currentColor,0.5); } + +columnview > listview.separators:not(.horizontal) > row:not(.separator), treeview.view > listview.separators:not(.horizontal) > row:not(.separator), window.print treeview.dialog-action-box > listview.separators:not(.horizontal) > row:not(.separator) { border-top: 1px solid alpha(currentColor,0.5); border-bottom: none; } + +columnview.data-table > listview > row > cell, treeview.data-table.view > listview > row > cell, window.print treeview.data-table.dialog-action-box > listview > row > cell { padding-top: 2px; padding-bottom: 2px; } + +columnview ~ undershoot.top, treeview.view ~ undershoot.top, window.print treeview.dialog-action-box ~ undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@shade_color,0.75), transparent 4px); } + +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within, treeview.view row:not(:selected) cell editablelabel:not(.editing):focus-within, window.print treeview.dialog-action-box row:not(:selected) cell editablelabel:not(.editing):focus-within { outline: 2px solid alpha(@accent_color,0.8); } + +columnview row:not(:selected) cell editablelabel.editing:focus-within, treeview.view row:not(:selected) cell editablelabel.editing:focus-within, window.print treeview.dialog-action-box row:not(:selected) cell editablelabel.editing:focus-within { outline: 2px solid @accent_color; } + +treeexpander { border-spacing: 4px; } + +.dialog-action-area { margin: 6px; border-spacing: 6px; } + +/**************** Print dialog * */ +window.print drawing { color: @window_fg_color; background: none; border: none; padding: 0; } + +window.print drawing paper { background-color: white; color: rgba(0, 0, 0, 0.8); background-clip: padding-box; border: 1px solid alpha(currentColor,0.5); } + +/******************** Page setup dalog * */ +/****************** GtkAboutDialog * */ +window.aboutdialog image.large-icons { -gtk-icon-size: 128px; } + +/************************* GtkColorChooserDialog * */ +/************* AdwDialog * */ +floating-sheet > dimming { background-color: alpha(@shade_color,2); } + +floating-sheet > sheet { border-radius: 12px; box-shadow: 0 2px 8px 2px rgba(0, 0, 0, 0.07), 0 3px 20px 10px rgba(0, 0, 0, 0.05), 0 6px 32px 16px rgba(0, 0, 0, 0.02), 0 0 0 1px rgba(0, 0, 0, 0.8); outline: 1px solid rgba(255, 255, 255, 0.3); outline-offset: -1px; } + +dialog.bottom-sheet.landscape sheet { margin-left: 30px; margin-right: 30px; } + +dialog.bottom-sheet.landscape sheet > outline.flush-left, dialog.bottom-sheet.landscape sheet > outline.flush-right, dialog.bottom-sheet.landscape sheet > outline.flush-left.flush-right { box-shadow: inset 1px 0 rgba(255, 255, 255, 0.3), inset -1px 0 rgba(255, 255, 255, 0.3), inset 0 1px rgba(255, 255, 255, 0.3); } + +dialog-host > dialog.background { background: none; } + +dialog-host > dialog.background sheet { background-color: @window_bg_color; color: @window_fg_color; } + +dialog-host > dialog.view, window.print dialog-host > dialog.dialog-action-box { background: none; } + +dialog-host > dialog.osd { background: none; } + +/*********************** GtkAppChooserDialog * */ +window.appchooser headerbar.titlebar > windowhandle { padding-top: 3px; } + +window.appchooser headerbar.titlebar box.start + box { margin-top: -6px; margin-bottom: -6px; min-height: 12px; } + +window.appchooser searchbar { background: none; } + +window.appchooser .dialog-vbox > box > box:not(.dialog-action-area) { margin: 6px; } + +window.appchooser .dialog-action-area { margin-top: 0; } + +/**************** GtkAssistant * */ +window.assistant .sidebar { padding: 6px; background-color: @sidebar_bg_color; color: @sidebar_fg_color; } + +window.assistant .sidebar:not(separator):dir(ltr) { border-right: none; box-shadow: inset -1px 0 alpha(currentColor,0.5); } + +window.assistant .sidebar:not(separator):dir(rtl) { box-shadow: inset 1px 0 alpha(currentColor,0.5); } + +window.assistant .sidebar:backdrop { background-color: @sidebar_backdrop_color; transition: background-color 200ms ease-out; } + +window.assistant .sidebar > label { padding: 6px 12px; border-radius: 6px; } + +window.assistant .sidebar > label.highlight { background-color: alpha(currentColor,0.1); box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +/*************** GtkComboBox * */ +combobox button { padding-top: 2px; padding-bottom: 2px; min-height: 30px; } + +/*************** GtkIconView * */ +iconview:selected { box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +iconview { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +iconview:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +iconview:drop(active) { box-shadow: none; } + +iconview > dndtarget:drop(active) { border-style: solid; border-width: 1px; border-color: @accent_bg_color; } + +/************** GtkInfoBar * */ +infobar > revealer > box { padding: 6px; padding-bottom: 7px; border-spacing: 6px; box-shadow: inset 0 -1px alpha(currentColor,0.5); } + +infobar > revealer > box > box { border-spacing: 6px; } + +infobar.action:hover > revealer > box { background-image: image(alpha(currentColor,0.05)); } + +infobar.action:active > revealer > box { background-image: image(alpha(currentColor,0.1)); } + +infobar.info > revealer > box { background-color: mix(@accent_bg_color,@window_bg_color,0.7); color: @window_fg_color; } + +infobar.question > revealer > box { background-color: mix(@accent_bg_color,@window_bg_color,0.7); color: @window_fg_color; } + +infobar.warning > revealer > box { background-color: mix(@warning_bg_color,@window_bg_color,0.7); color: @window_fg_color; } + +infobar.error > revealer > box { background-color: mix(@error_bg_color,@window_bg_color,0.7); color: @window_fg_color; } + +infobar .close { min-width: 18px; min-height: 18px; padding: 4px; border-radius: 50%; } + +/**************** GtkStatusBar * */ +statusbar { padding: 6px 10px 6px 10px; } + +/*************** GtkTreeView * */ +treeview.view, window.print treeview.dialog-action-box { border-left-color: mix(currentColor,@view_bg_color,0.6); border-top-color: mix(currentColor,@view_bg_color,0.6); } + +treeview.view:selected:focus, treeview.view:selected, window.print treeview.dialog-action-box:selected { border-radius: 0; } + +treeview.view.separator, window.print treeview.separator.dialog-action-box { min-height: 2px; color: alpha(currentColor,0.5); } + +treeview.view.expander, window.print treeview.expander.dialog-action-box { min-width: 16px; min-height: 16px; -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); color: alpha(currentColor,0.7); } + +treeview.view.expander:dir(rtl), window.print treeview.expander.dialog-action-box:dir(rtl) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); } + +treeview.view.expander:hover, window.print treeview.expander.dialog-action-box:hover, treeview.view.expander:active, window.print treeview.expander.dialog-action-box:active { color: currentColor; } + +treeview.view.expander:checked, window.print treeview.expander.dialog-action-box:checked { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +treeview.view.expander:disabled, window.print treeview.expander.dialog-action-box:disabled { color: alpha(currentColor,0.4); } + +treeview.view > dndtarget:drop(active), window.print treeview.dialog-action-box > dndtarget:drop(active) { border-style: solid none; border-width: 1px; border-color: @accent_bg_color; } + +treeview.view > dndtarget.after:drop(active), window.print treeview.dialog-action-box > dndtarget.after:drop(active) { border-top-style: none; } + +treeview.view > dndtarget.before:drop(active), window.print treeview.dialog-action-box > dndtarget.before:drop(active) { border-bottom-style: none; } + +treeview.view > header > button, window.print treeview.dialog-action-box > header > button { padding-left: 4px; padding-right: 4px; border-bottom: 1px solid alpha(currentColor,0.5); } + +treeview.view.progressbar, window.print treeview.progressbar.dialog-action-box { box-shadow: none; } + +treeview.view.progressbar, window.print treeview.progressbar.dialog-action-box, treeview.view.progressbar:selected { background-color: @accent_bg_color; color: @accent_fg_color; } + +treeview.view.trough, window.print treeview.trough.dialog-action-box { background-color: alpha(currentColor,0.1); } + +treeview.view ~ undershoot.top, window.print treeview.dialog-action-box ~ undershoot.top { box-shadow: none; background: none; } + +treeview.view acceleditor > label, window.print treeview.dialog-action-box acceleditor > label { background-color: mix(currentColor,@view_bg_color,0.9); } + +treeview.navigation-sidebar { padding: 0; } + +treeview.navigation-sidebar:selected:focus, treeview.navigation-sidebar:selected { background-color: alpha(currentColor,0.1); } + +treeview entry:focus-within:dir(rtl), treeview entry:focus-within:dir(ltr) { background-color: @view_bg_color; transition-property: color, background; } + +treeview entry.flat, treeview entry { border-radius: 0; background-image: none; background-color: @view_bg_color; } + +treeview entry.flat:focus-within, treeview entry:focus-within { border-color: @accent_color; } + +treeview spinbutton:not(.vertical) { min-height: 0; border-style: none; border-radius: 0; } + +treeview spinbutton:not(.vertical) > text { min-height: 0; padding: 1px 2px; } + +.sidebar:not(separator):dir(ltr), .sidebar.left:not(separator), .sidebar.left:not(separator):dir(rtl) { border-right: 1px solid alpha(currentColor,0.5); border-left-style: none; } + +.sidebar:not(separator):dir(rtl), .sidebar.right:not(separator) { border-left: 1px solid alpha(currentColor,0.5); border-right-style: none; } + +.sidebar listview.view, .sidebar window.print listview.dialog-action-box, window.print .sidebar listview.dialog-action-box, .sidebar list { background-color: transparent; color: inherit; } + +paned .sidebar.left, paned .sidebar.right, paned .sidebar.left:dir(rtl), paned .sidebar:dir(rtl), paned .sidebar:dir(ltr), paned .sidebar { border-style: none; } + +.large-title { font-weight: 300; font-size: 24pt; } + +dropdown > button > box, combobox > button > box { border-spacing: 6px; } + +dropdown > button > box > stack > row.activatable:hover, combobox > button > box > stack > row.activatable:hover, dropdown > button > box > stack > row.activatable:active, combobox > button > box > stack > row.activatable:active { background: none; } + +dropdown arrow, combobox arrow { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); min-height: 16px; min-width: 16px; } + +dropdown:drop(active), combobox:drop(active) { box-shadow: none; } + +dropdown popover.menu, combobox popover.menu { padding-top: 6px; } + +dropdown popover.menu listview > row, combobox popover.menu listview > row { min-width: 0; } + +dropdown popover.menu .dropdown-searchbar, combobox popover.menu .dropdown-searchbar { padding: 6px; } + +dropdown popover.menu .dropdown-searchbar + scrolledwindow > undershoot.top, combobox popover.menu .dropdown-searchbar + scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover.emoji-picker > contents { padding: 0; } + +.emoji-searchbar { padding: 6px; } + +.emoji-toolbar { padding: 3px; } + +button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) { min-width: 32px; min-height: 32px; } + +popover.emoji-picker emoji { font-size: x-large; padding: 6px; border-radius: 6px; } + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover { background: alpha(currentColor,0.07); } + +popover.emoji-picker emoji:active { background: alpha(currentColor,0.16); } + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover, popover.emoji-picker emoji:active { box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +popover.emoji-picker scrolledwindow.view, popover.emoji-picker window.print scrolledwindow.dialog-action-box, window.print popover.emoji-picker scrolledwindow.dialog-action-box { background: none; color: inherit; } + +popover.emoji-picker scrolledwindow.view > undershoot.top, popover.emoji-picker window.print scrolledwindow.dialog-action-box > undershoot.top, window.print popover.emoji-picker scrolledwindow.dialog-action-box > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover.emoji-picker scrolledwindow.view > undershoot.bottom, popover.emoji-picker window.print scrolledwindow.dialog-action-box > undershoot.bottom, window.print popover.emoji-picker scrolledwindow.dialog-action-box > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover.emoji-completion > contents { padding: 6px; padding-bottom: 4px; } + +emoji-completion-row { padding: 6px; margin-bottom: 2px; border-radius: 6px; } + +emoji-completion-row:dir(ltr) { padding-right: 12px; } + +emoji-completion-row:dir(rtl) { padding-left: 12px; } + +emoji-completion-row > box { border-spacing: 6px; } + +emoji-completion-row:focus, emoji-completion-row:hover { background-color: alpha(currentColor,0.1); color: @popover_fg_color; } + +emoji-completion-row:active { background-color: alpha(currentColor,0.16); } + +emoji-completion-row:focus, emoji-completion-row:hover, emoji-completion-row:active { box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +spinbutton, entry { min-height: 34px; padding-left: 9px; padding-right: 9px; border-radius: 6px; border-spacing: 6px; background-color: alpha(currentColor,0.1); background-clip: padding-box; caret-color: currentColor; box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +spinbutton, entry { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +spinbutton:focus-within, entry:focus-within { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +.osd spinbutton:focus-within, .osd entry:focus-within { outline-color: rgba(255, 255, 255, 0.5); } + +spinbutton > text > block-cursor, entry > text > block-cursor { color: @view_bg_color; background-color: @view_fg_color; } + +spinbutton.flat, entry.flat:focus-within, entry.flat:disabled, entry.flat { min-height: 0; padding: 2px; background-color: transparent; box-shadow: none; border-radius: 0; } + +spinbutton:disabled, entry:disabled { filter: opacity(0.4); } + +spinbutton.error, entry.error { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +spinbutton.error:focus-within, entry.error:focus-within { outline-color: alpha(currentColor,0.8); outline-width: 2px; outline-offset: -2px; } + +spinbutton.error > text > selection:focus-within, entry.error > text > selection:focus-within { background-color: alpha(@error_color,0.2); } + +spinbutton.error > text > cursor-handle > contents, entry.error > text > cursor-handle > contents { background-color: currentColor; } + +spinbutton.error > progress > trough > progress, entry.error > progress > trough > progress { border-color: currentColor; } + +spinbutton.warning, entry.warning { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +spinbutton.warning:focus-within, entry.warning:focus-within { outline-color: alpha(currentColor,0.8); outline-width: 2px; outline-offset: -2px; } + +spinbutton.warning > text > selection:focus-within, entry.warning > text > selection:focus-within { background-color: alpha(@warning_color,0.2); } + +spinbutton.warning > text > cursor-handle > contents, entry.warning > text > cursor-handle > contents { background-color: currentColor; } + +spinbutton.warning > progress > trough > progress, entry.warning > progress > trough > progress { border-color: currentColor; } + +spinbutton.success, entry.success { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +spinbutton.success:focus-within, entry.success:focus-within { outline-color: alpha(currentColor,0.8); outline-width: 2px; outline-offset: -2px; } + +spinbutton.success > text > selection:focus-within, entry.success > text > selection:focus-within { background-color: alpha(@success_color,0.2); } + +spinbutton.success > text > cursor-handle > contents, entry.success > text > cursor-handle > contents { background-color: currentColor; } + +spinbutton.success > progress > trough > progress, entry.success > progress > trough > progress { border-color: currentColor; } + +spinbutton > image, entry > image { opacity: 0.85; } + +spinbutton > image:hover, entry > image:hover { opacity: 1; } + +spinbutton > image:active, entry > image:active { opacity: 0.9; } + +spinbutton > image.left, entry > image.left { margin-right: 6px; } + +spinbutton > image.right, entry > image.right { margin-left: 6px; } + +spinbutton.password image.caps-lock-indicator, entry.password image.caps-lock-indicator { opacity: 0.8; } + +spinbutton:drop(active), entry:drop(active):focus-within, entry:drop(active) { border-color: @accent_bg_color; box-shadow: inset 0 0 0 1px @accent_bg_color; } + +spinbutton > progress, entry > progress { margin-bottom: 3px; } + +spinbutton > progress > trough, entry > progress > trough { min-height: 2px; } + +spinbutton > progress > trough > progress, entry > progress > trough > progress { background-color: transparent; background-image: none; border-radius: 0; border-width: 0 0 2px; border-color: @accent_bg_color; border-style: solid; box-shadow: none; } + +.osd spinbutton > progress > trough > progress, .osd entry > progress > trough > progress { border-color: rgba(255, 255, 255, 0.75); } + +expander { min-width: 16px; min-height: 16px; -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +expander:dir(rtl) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); } + +expander:disabled { filter: opacity(0.4); } + +expander:checked { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +expander-widget > box > title { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +expander-widget:focus:focus-visible > box > title { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +expander-widget > box > title { border-radius: 6px; } + +expander-widget > box > title > expander { opacity: .7; } + +expander-widget > box > title:hover > expander, expander-widget > box > title:active > expander { opacity: 1; } + +placessidebar .navigation-sidebar > row { padding: 0; } + +placessidebar .navigation-sidebar > row > revealer { padding: 0 14px; } + +placessidebar .navigation-sidebar > row image.sidebar-icon:dir(ltr) { padding-right: 8px; } + +placessidebar .navigation-sidebar > row image.sidebar-icon:dir(rtl) { padding-left: 8px; } + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) { padding-right: 2px; } + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) { padding-left: 2px; } + +button.sidebar-button { min-height: 26px; min-width: 26px; margin-top: 3px; margin-bottom: 3px; padding: 0; border-radius: 100%; } + +placessidebar .navigation-sidebar > row:selected:active { box-shadow: none; } + +placessidebar .navigation-sidebar > row.sidebar-placeholder-row { padding: 0 8px; min-height: 2px; background-image: image(@accent_bg_color); background-clip: content-box; } + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row { color: @accent_color; } + +placessidebar .navigation-sidebar > row:drop(active):not(:disabled) { color: @accent_bg_color; box-shadow: inset 0 0 0 1px @accent_bg_color; } + +row image.sidebar-icon { opacity: 0.7; } + +row .sidebar-button { opacity: 0.7; } + +row .sidebar-button:hover, row .sidebar-button:active, row .sidebar-button.keyboard-activating { opacity: 1; } + +placesview .server-list-button > image { transition: -gtk-icon-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); -gtk-icon-transform: rotate(0turn); } + +placesview .server-list-button:checked > image { -gtk-icon-transform: rotate(-0.5turn); } + +placesview > actionbar > revealer > box > box { border-spacing: 6px; } + +filechooser { box-shadow: 0 1px alpha(currentColor,0.5); } + +filechooser pathbar button:not(.image-button) { padding-left: 9px; padding-right: 9px; } + +filechooser pathbar button > box { border-spacing: 4px; } + +filechooser pathbar button > box > label { padding-left: 2px; padding-right: 2px; } + +filechooser columnview > listview > row > cell, filechooser treeview.view > listview > row > cell, filechooser window.print treeview.dialog-action-box > listview > row > cell, window.print filechooser treeview.dialog-action-box > listview > row > cell { padding: 0; } + +filechooser columnview > listview > row > cell > filelistcell, filechooser treeview.view > listview > row > cell > filelistcell, filechooser window.print treeview.dialog-action-box > listview > row > cell > filelistcell, window.print filechooser treeview.dialog-action-box > listview > row > cell > filelistcell { padding: 8px 6px; } + +filechooser gridview { padding: 15px; } + +filechooser gridview ~ undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@shade_color,0.75), transparent 4px); } + +filechooser gridview > child { border-radius: 12px; padding: 0; margin: 3px; } + +filechooser gridview > child > filelistcell { padding: 6px 12px; } + +filechooser gridview > child filethumbnail image { filter: drop-shadow(0px 1px 1px rgba(0, 0, 0, 0.3)); } + +filechooser gridview > child box { border-spacing: 6px; } + +filechooser > box > actionbar { box-shadow: 0 -1px alpha(currentColor,0.5), 0 -2px 4px alpha(@headerbar_shade_color,0.5); } + +filechooser > box > actionbar > revealer > box { box-shadow: none; padding-top: 6px; } + +filechooser scrolledwindow + actionbar > revealer > box { background-color: mix(@accent_bg_color,@view_bg_color,0.7); color: @window_fg_color; box-shadow: none; padding-top: 6px; font-weight: bold; } + +filechooser scrolledwindow + actionbar > revealer > box:backdrop { background-color: mix(@accent_bg_color,@view_bg_color,0.85); } + +filechooser placesview > stack > scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@shade_color,0.75), transparent 4px); } + +filechooser placesview > actionbar > revealer > box { background: @view_bg_color; color: @view_fg_color; box-shadow: none; padding-top: 6px; } + +filechooser placesview > actionbar > revealer > box:backdrop { background: @view_bg_color; transition: none; } + +filechooser placessidebar { background-color: @sidebar_bg_color; color: @sidebar_fg_color; } + +filechooser placessidebar:backdrop { background-color: @sidebar_backdrop_color; transition: background-color 200ms ease-out; } + +filechooser paned.horizontal > separator:dir(ltr) { box-shadow: inset 1px 0 @sidebar_bg_color, inset 1px 0 alpha(currentColor,0.5); } + +filechooser paned.horizontal > separator:dir(ltr):backdrop { box-shadow: inset 1px 0 @sidebar_backdrop_color, inset 1px 0 alpha(currentColor,0.5); } + +filechooser paned.horizontal > separator:dir(rtl) { box-shadow: inset -1px 0 @sidebar_bg_color, inset -1px 0 alpha(currentColor,0.5); } + +filechooser paned.horizontal > separator:dir(rtl):backdrop { box-shadow: inset -1px 0 @sidebar_backdrop_color, inset -1px 0 alpha(currentColor,0.5); } + +filechooser paned.horizontal > separator:backdrop { transition: box-shadow 200ms ease-out; } + +/* Fix header bar height in the file chooser */ +window.filechooser headerbar box.start + box.vertical { margin-top: -6px; margin-bottom: -6px; min-height: 12px; } + +headerbar { min-height: 47px; background-color: @headerbar_bg_color; color: @headerbar_fg_color; box-shadow: inset 0 -1px alpha(@headerbar_border_color,0.5), inset 1px 0 alpha(@headerbar_border_color,0.5), inset -1px 0 alpha(@headerbar_border_color,0.5); margin-left: -1px; margin-right: -1px; } + +headerbar > windowhandle > box { padding: 6px 7px 7px 7px; } + +headerbar > windowhandle > box > box.start, headerbar > windowhandle > box > box.end { border-spacing: 6px; } + +headerbar > windowhandle > box > box.start:dir(ltr), headerbar > windowhandle > box > box.end:dir(rtl), headerbar > windowhandle > box > widget > box.start:dir(ltr), headerbar > windowhandle > box > widget > box.end:dir(rtl) { margin-right: 6px; } + +headerbar > windowhandle > box > box.start:dir(rtl), headerbar > windowhandle > box > box.end:dir(ltr), headerbar > windowhandle > box > widget > box.start:dir(rtl), headerbar > windowhandle > box > widget > box.end:dir(ltr) { margin-left: 6px; } + +headerbar:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +headerbar:backdrop > windowhandle { filter: opacity(0.5); transition: filter 200ms ease-out; } + +headerbar.default-decoration { min-height: 37px; } + +headerbar.default-decoration > windowhandle > box { padding: 3px 4px 4px 4px; } + +headerbar.default-decoration windowcontrols > button { min-height: 22px; min-width: 22px; padding: 4px; } + +headerbar.default-decoration windowcontrols > .icon { margin: 7px; } + +window > .titlebar:not(.flat) { box-shadow: 0 1px alpha(currentColor,0.5), 0 2px 4px alpha(@headerbar_shade_color,0.5); } + +window > .titlebar headerbar:not(.flat) { box-shadow: inset 1px 0 alpha(@headerbar_border_color,0.5), inset -1px 0 alpha(@headerbar_border_color,0.5); } + +window > headerbar.titlebar, window > .titlebar headerbar { min-height: 46px; } + +window > headerbar.titlebar > windowhandle > box, window > .titlebar headerbar > windowhandle > box { padding-bottom: 6px; } + +window > headerbar.titlebar.default-decoration, window > .titlebar headerbar.default-decoration { min-height: 36px; } + +window > headerbar.titlebar.default-decoration > windowhandle > box, window > .titlebar headerbar.default-decoration > windowhandle > box { padding-bottom: 3px; } + +toolbarview > .top-bar headerbar, toolbarview > .bottom-bar headerbar, headerbar.flat, window.shortcuts headerbar.titlebar, window.print headerbar.titlebar, window.pagesetup headerbar.titlebar, window.aboutdialog headerbar.titlebar, window.colorchooser headerbar.titlebar, window.appchooser headerbar.titlebar { background: none; box-shadow: none; color: inherit; min-height: 46px; } + +toolbarview > .top-bar headerbar > windowhandle > box, toolbarview > .bottom-bar headerbar > windowhandle > box, headerbar.flat > windowhandle > box, window.shortcuts headerbar.titlebar > windowhandle > box, window.print headerbar.titlebar > windowhandle > box, window.pagesetup headerbar.titlebar > windowhandle > box, window.aboutdialog headerbar.titlebar > windowhandle > box, window.colorchooser headerbar.titlebar > windowhandle > box, window.appchooser headerbar.titlebar > windowhandle > box { padding-bottom: 6px; } + +toolbarview > .top-bar headerbar.default-decoration, toolbarview > .bottom-bar headerbar.default-decoration, headerbar.default-decoration.flat, window.shortcuts headerbar.default-decoration.titlebar, window.print headerbar.default-decoration.titlebar, window.pagesetup headerbar.default-decoration.titlebar, window.aboutdialog headerbar.default-decoration.titlebar, window.colorchooser headerbar.default-decoration.titlebar, window.appchooser headerbar.default-decoration.titlebar { min-height: 36px; } + +toolbarview > .top-bar headerbar.default-decoration > windowhandle > box, toolbarview > .bottom-bar headerbar.default-decoration > windowhandle > box, headerbar.default-decoration.flat > windowhandle > box, window.shortcuts headerbar.default-decoration.titlebar > windowhandle > box, window.print headerbar.default-decoration.titlebar > windowhandle > box, window.pagesetup headerbar.default-decoration.titlebar > windowhandle > box, window.aboutdialog headerbar.default-decoration.titlebar > windowhandle > box, window.colorchooser headerbar.default-decoration.titlebar > windowhandle > box, window.appchooser headerbar.default-decoration.titlebar > windowhandle > box { padding-bottom: 3px; } + +toolbarview > .top-bar headerbar:backdrop, toolbarview > .bottom-bar headerbar:backdrop { transition: none; } + +toolbarview > .top-bar headerbar:backdrop > windowhandle, toolbarview > .bottom-bar headerbar:backdrop > windowhandle { filter: none; transition: none; } + +window.devel toolbarview > .top-bar headerbar > windowhandle, toolbarview > .top-bar window.devel headerbar > windowhandle, window.devel toolbarview > .bottom-bar headerbar > windowhandle, toolbarview > .bottom-bar window.devel headerbar > windowhandle { background-image: none; } + +toolbarview > .top-bar .collapse-spacing headerbar, toolbarview > .bottom-bar .collapse-spacing headerbar, window.shortcuts headerbar.titlebar, window.appchooser headerbar.titlebar { min-height: 40px; } + +toolbarview > .top-bar .collapse-spacing headerbar > windowhandle > box, toolbarview > .bottom-bar .collapse-spacing headerbar > windowhandle > box, window.shortcuts headerbar.titlebar > windowhandle > box, window.appchooser headerbar.titlebar > windowhandle > box { padding-top: 3px; padding-bottom: 3px; } + +toolbarview > .top-bar .collapse-spacing headerbar.default-decoration, toolbarview > .bottom-bar .collapse-spacing headerbar.default-decoration, window.shortcuts headerbar.default-decoration.titlebar, window.appchooser headerbar.default-decoration.titlebar { min-height: 30px; } + +toolbarview > .top-bar .collapse-spacing headerbar.default-decoration > windowhandle > box, toolbarview > .bottom-bar .collapse-spacing headerbar.default-decoration > windowhandle > box, window.shortcuts headerbar.default-decoration.titlebar > windowhandle > box, window.appchooser headerbar.default-decoration.titlebar > windowhandle > box { padding-top: 0px; padding-bottom: 0px; } + +.titlebar:not(headerbar) separator { background-color: alpha(@headerbar_border_color,0.5); } + +/********************* GtkWindowControls * */ +windowcontrols { border-spacing: 3px; } + +windowcontrols > button { min-width: 24px; padding: 5px; box-shadow: none; } + +windowcontrols > button > image { background-color: alpha(currentColor,0.1); border-radius: 100%; padding: 2px; transition: background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +windowcontrols > button, windowcontrols > button:hover, windowcontrols > button:active { background: none; } + +windowcontrols > button:hover > image { background-color: alpha(currentColor,0.15); } + +windowcontrols > button:active > image { background-color: alpha(currentColor,0.3); } + +windowcontrols > .icon { margin: 9px; } + +/****************** AdwWindowTitle * */ +headerbar .title, windowtitle .title { padding-left: 12px; padding-right: 12px; font-weight: bold; } + +headerbar .subtitle, windowtitle .subtitle { font-size: smaller; padding-left: 12px; padding-right: 12px; } + +windowtitle { margin-top: -6px; margin-bottom: -6px; min-height: 12px; } + +window.devel headerbar > windowhandle { background-image: cross-fade(5% -gtk-recolor(url("assets/devel-symbolic.svg")), image(transparent)); background-repeat: repeat-x; } + +window.devel dialog headerbar > windowhandle { background-image: unset; background-repeat: unset; } + +label { caret-color: currentColor; } + +label:disabled { filter: opacity(0.4); } + +.dim-label, scale > value, progressbar > text, row.expander image.expander-row-arrow, row.property > box.header > box.title > .title, row.expander.property box > list > row > box.header > box.title > .title, row label.subtitle, spinbutton > text > placeholder, entry > text > placeholder, headerbar .subtitle, windowtitle .subtitle, label.separator { opacity: 0.9; } + +.accent { color: @accent_color; } + +.success { color: @success_color; } + +.warning { color: @warning_color; } + +.error { color: @error_color; } + +/********************** General Typography * */ +.title-1 { font-weight: 800; font-size: 20pt; } + +.title-2 { font-weight: 800; font-size: 15pt; } + +.title-3 { font-weight: 700; font-size: 15pt; } + +.title-4 { font-weight: 700; font-size: 13pt; } + +.heading, listview > header { font-weight: 700; font-size: 11pt; } + +.body { font-weight: 400; font-size: 11pt; } + +.caption-heading { font-weight: 700; font-size: 9pt; } + +.caption { font-weight: 400; font-size: 9pt; } + +.monospace { font-family: monospace; } + +.numeric, spinbutton, scale > value, progressbar > text { font-feature-settings: "tnum"; } + +/******************* Editable Labels * */ +editablelabel > stack > text { color: @view_fg_color; background-color: @view_bg_color; } + +levelbar:disabled { filter: opacity(0.4); } + +levelbar.horizontal trough > block { min-height: 8px; border-radius: 99px; } + +levelbar.horizontal trough > block.empty, levelbar.horizontal trough > block.full { border-radius: 99px; } + +levelbar.horizontal.discrete > trough > block { min-height: 8px; margin-right: 2px; min-width: 26px; border-radius: 0; } + +levelbar.horizontal.discrete > trough > block:first-child { border-radius: 99px 0 0 99px; } + +levelbar.horizontal.discrete > trough > block:last-child { border-radius: 0 99px 99px 0; margin-right: 0; } + +levelbar.vertical trough > block { min-width: 8px; border-radius: 99px; } + +levelbar.vertical trough > block.empty, levelbar.vertical trough > block.full { border-radius: 99px; } + +levelbar.vertical.discrete > trough > block { min-width: 8px; margin-bottom: 2px; min-height: 26px; border-radius: 0; } + +levelbar.vertical.discrete > trough > block:first-child { border-radius: 99px 99px 0 0; } + +levelbar.vertical.discrete > trough > block:last-child { border-radius: 0 0 99px 99px; margin-bottom: 0; } + +levelbar > trough { padding: 0; } + +levelbar > trough > block.low { background-color: @warning_bg_color; } + +levelbar > trough > block.high, levelbar > trough > block:not(.empty) { background-color: @accent_bg_color; } + +levelbar > trough > block.full { background-color: @success_bg_color; } + +levelbar > trough > block.empty { background-color: alpha(currentColor,0.3); box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +.osd levelbar > trough > block.high, .osd levelbar > trough > block:not(.empty) { background-color: rgba(255, 255, 255, 0.75); } + +.linked:not(.vertical) > button:dir(ltr):not(:first-child), .linked:not(.vertical) > button:dir(rtl):not(:last-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > button:dir(ltr):not(:last-child), .linked:not(.vertical) > button:dir(rtl):not(:first-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical button:not(:first-child) { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical button:not(:last-child) { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > menubutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > menubutton:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > menubutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > menubutton:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical menubutton:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical menubutton:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > dropdown:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > combobox:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > dropdown:dir(rtl):not(:last-child) > button, .linked:not(.vertical) > combobox:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > dropdown:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > combobox:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > dropdown:dir(rtl):not(:first-child) > button, .linked:not(.vertical) > combobox:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical dropdown:not(:first-child) > button, .linked.vertical combobox:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical dropdown:not(:last-child) > button, .linked.vertical combobox:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > colorbutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > colorbutton:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > colorbutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > colorbutton:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical colorbutton:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical colorbutton:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > fontbutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > fontbutton:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > fontbutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > fontbutton:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical fontbutton:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical fontbutton:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > tabbutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > tabbutton:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > tabbutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > tabbutton:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical tabbutton:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical tabbutton:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > spinbutton:dir(ltr):not(:first-child), .linked:not(.vertical) > spinbutton:dir(rtl):not(:last-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > spinbutton:dir(ltr):not(:last-child), .linked:not(.vertical) > spinbutton:dir(rtl):not(:first-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical spinbutton:not(:first-child) { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical spinbutton:not(:last-child) { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > entry:dir(ltr):not(:first-child), .linked:not(.vertical) > entry:dir(rtl):not(:last-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > entry:dir(ltr):not(:last-child), .linked:not(.vertical) > entry:dir(rtl):not(:first-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical entry:not(:first-child) { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical entry:not(:last-child) { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > combobox:dir(ltr):not(:first-child) > box > button.combo, .linked:not(.vertical) > combobox:dir(rtl):not(:last-child) > box > button.combo { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > combobox:dir(ltr):not(:last-child) > box > button.combo, .linked:not(.vertical) > combobox:dir(rtl):not(:first-child) > box > button.combo { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical combobox:not(:first-child) > box > button.combo { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical combobox:not(:last-child) > box > button.combo { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > appchooserbutton:dir(ltr):not(:first-child) > combobox > box > button.combo, .linked:not(.vertical) > appchooserbutton:dir(rtl):not(:last-child) > combobox > box > button.combo { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > appchooserbutton:dir(ltr):not(:last-child) > combobox > box > button.combo, .linked:not(.vertical) > appchooserbutton:dir(rtl):not(:first-child) > combobox > box > button.combo { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical appchooserbutton:not(:first-child) > combobox > box > button.combo { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical appchooserbutton:not(:last-child) > combobox > box > button.combo { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +link, button.link { color: @accent_color; text-decoration: underline; font-weight: inherit; } + +link:visited, button.link:visited { color: mix(@accent_color,@view_fg_color,0.2); } + +link:hover, button.link:hover { color: shade(@accent_color,1.1); } + +link:active, button.link:active { color: @accent_color; } + +link:disabled, button.link:disabled { color: alpha(currentColor,0.4); } + +.osd link, .osd button.link { color: mix(@accent_bg_color,white,0.5); } + +.osd link:visited, .osd button.link:visited { color: mix(@accent_bg_color,white,0.25); } + +.osd link:active, .osd button.link:active { color: mix(@accent_bg_color,white,0.5); } + +link { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +link:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +.osd link:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +button.link > label { text-decoration: underline; } + +listview, list { color: @view_fg_color; background-color: @view_bg_color; background-clip: padding-box; border-color: alpha(currentColor,0.5); } + +listview > row, list > row { padding: 2px; background-clip: padding-box; } + +listview > row.expander, list > row.expander { padding: 0px; } + +listview > row.expander .row-header, list > row.expander .row-header { padding: 2px; } + +listview.horizontal row.separator, listview.separators.horizontal > row:not(.separator), list.horizontal row.separator, list.separators.horizontal > row:not(.separator) { border-left: 1px solid alpha(currentColor,0.5); } + +listview:not(.horizontal) row.separator, listview.separators:not(.horizontal) > row:not(.separator), list:not(.horizontal) row.separator, list.separators:not(.horizontal) > row:not(.separator) { border-bottom: 1px solid alpha(currentColor,0.5); } + +listview > header { padding: 2px; padding-top: 18px; padding-bottom: 6px; } + +row { background-clip: padding-box; } + +row { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +.osd row:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +.osd row.activatable:hover { background-color: alpha(currentColor,0.07); } + +.osd row.activatable:active { background-color: alpha(currentColor,0.16); } + +.osd row.activatable.has-open-popup { background-color: alpha(currentColor,0.07); } + +.osd row.activatable:selected:hover { background-color: alpha(currentColor,0.13); } + +.osd row.activatable:selected:active { background-color: alpha(currentColor,0.19); } + +.osd row.activatable.has-open-popup:selected { background-color: alpha(currentColor,0.13); } + +.osd row:selected { background-color: alpha(currentColor,0.1); } + +row.activatable:hover { background-color: alpha(currentColor,0.04); } + +row.activatable:active { background-color: alpha(currentColor,0.08); } + +row.activatable.has-open-popup { background-color: alpha(currentColor,0.04); } + +row.activatable:selected:hover { background-color: alpha(@accent_bg_color,0.32); } + +row.activatable:selected:active { background-color: alpha(@accent_bg_color,0.39); } + +row.activatable.has-open-popup:selected { background-color: alpha(@accent_bg_color,0.32); } + +row:selected { background-color: alpha(@accent_bg_color,0.25); } + +/******************************************************* Rich Lists * Large list usually containing lots of widgets * https://gitlab.gnome.org/GNOME/gtk/-/issues/3073 * */ +.rich-list { /* rich lists usually containing other widgets than just labels/text */ } + +.rich-list > row { padding: 8px 12px; min-height: 32px; /* should be tall even when only containing a label */ } + +.rich-list > row > box { border-spacing: 12px; } + +.rich-list > header { padding-left: 12px; padding-right: 12px; } + +/**************** AdwActionRow * */ +row label.subtitle { font-size: smaller; } + +row > box.header { margin-left: 12px; margin-right: 12px; border-spacing: 6px; min-height: 50px; } + +row > box.header > .icon:disabled { filter: opacity(0.4); } + +row > box.header > box.title { margin-top: 6px; margin-bottom: 6px; border-spacing: 3px; padding: 0; } + +row > box.header > box.title, row > box.header > box.title > .title, row > box.header > box.title > .subtitle { padding: 0; font-weight: inherit; } + +row > box.header > .prefixes, row > box.header > .suffixes { border-spacing: 6px; } + +row > box.header > .icon:dir(ltr), row > box.header > .prefixes:dir(ltr) { margin-right: 6px; } + +row > box.header > .icon:dir(rtl), row > box.header > .prefixes:dir(rtl) { margin-left: 6px; } + +row.property > box.header > box.title > .title, row.expander.property box > list > row > box.header > box.title > .title { font-size: smaller; } + +row.property > box.header > box.title > .subtitle, row.expander.property box > list > row > box.header > box.title > .subtitle { font-size: inherit; opacity: 1; } + +row.property.monospace, row.expander.property box > list > row.monospace { font-family: inherit; } + +row.property.monospace > box.header > box.title > .subtitle, row.expander.property box > list > row.monospace > box.header > box.title > .subtitle { font-family: monospace; } + +/****************************** AdwEntryRow and AdwSpinRow * */ +row.entry.activatable.focused:not(:selected):hover, row.entry.activatable.focused:not(:selected):active { background-color: transparent; } + +row.entry:disabled text { opacity: 0.4; } + +row.entry:disabled .dim-label, row.entry:disabled scale > value, row.entry:disabled progressbar > text, row.entry:disabled row.expander image.expander-row-arrow, row.expander row.entry:disabled image.expander-row-arrow, row.entry:disabled spinbutton > text > placeholder, row.entry:disabled entry > text > placeholder, row.entry:disabled label.separator, row.entry:disabled row.property > box.header > box.title > .title, row.entry:disabled row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.entry:disabled box > list > row > box.header > box.title > .title, row.entry:disabled .subtitle { opacity: 1; } + +row.entry .edit-icon, row.entry .indicator { min-width: 24px; min-height: 24px; padding: 5px; } + +row.entry .edit-icon:disabled { opacity: 0.3; } + +row.entry .indicator { opacity: 0.8; } + +row.entry.monospace { font-family: inherit; } + +row.entry.monospace text { font-family: monospace; } + +row.spin.activatable.focused:not(:selected):hover, row.spin.activatable.focused:not(:selected):active { background-color: transparent; } + +row.spin spinbutton { background: none; border-spacing: 6px; box-shadow: none; } + +row.spin spinbutton, row.spin spinbutton:focus { outline: none; } + +row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child { min-width: 30px; min-height: 30px; margin: 10px 2px; border: none; } + +row.spin:disabled spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:disabled, row.spin:disabled spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child:disabled, row.spin:disabled spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child:disabled, row.spin:disabled spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):disabled, row.spin:disabled spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child:disabled, row.spin:disabled spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child:disabled { filter: none; } + +row.entry, row.spin { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.entry.focused, row.spin.focused { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -1px; } + +row.entry.activatable.focused:not(:selected):hover, row.entry.activatable.focused:not(:selected):active, row.spin.activatable.focused:not(:selected):hover, row.spin.activatable.focused:not(:selected):active { background-color: transparent; } + +row.entry.error, row.spin.error { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.entry.error.focused, row.spin.error.focused { outline-color: alpha(currentColor,0.8); outline-width: 2px; outline-offset: -1px; } + +row.entry.error text > selection:focus-within, row.spin.error text > selection:focus-within { background-color: alpha(@error_color,0.2); } + +row.entry.error text > cursor-handle > contents, row.spin.error text > cursor-handle > contents { background-color: currentColor; } + +row.entry.error .dim-label, row.entry.error scale > value, row.entry.error progressbar > text, row.entry.error row.expander image.expander-row-arrow, row.expander row.entry.error image.expander-row-arrow, row.entry.error spinbutton > text > placeholder, row.entry.error entry > text > placeholder, row.entry.error label.separator, row.entry.error row.property > box.header > box.title > .title, row.entry.error row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.entry.error box > list > row > box.header > box.title > .title, row.entry.error .subtitle, row.spin.error .dim-label, row.spin.error scale > value, row.spin.error progressbar > text, row.spin.error row.expander image.expander-row-arrow, row.expander row.spin.error image.expander-row-arrow, row.spin.error spinbutton > text > placeholder, row.spin.error entry > text > placeholder, row.spin.error label.separator, row.spin.error row.property > box.header > box.title > .title, row.spin.error row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.spin.error box > list > row > box.header > box.title > .title, row.spin.error .subtitle { opacity: 1; } + +row.entry.error .suggested-action, row.spin.error .suggested-action { background-color: @error_bg_color; color: @error_fg_color; } + +row.entry.warning, row.spin.warning { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.entry.warning.focused, row.spin.warning.focused { outline-color: alpha(currentColor,0.8); outline-width: 2px; outline-offset: -1px; } + +row.entry.warning text > selection:focus-within, row.spin.warning text > selection:focus-within { background-color: alpha(@warning_color,0.2); } + +row.entry.warning text > cursor-handle > contents, row.spin.warning text > cursor-handle > contents { background-color: currentColor; } + +row.entry.warning .dim-label, row.entry.warning scale > value, row.entry.warning progressbar > text, row.entry.warning row.expander image.expander-row-arrow, row.expander row.entry.warning image.expander-row-arrow, row.entry.warning spinbutton > text > placeholder, row.entry.warning entry > text > placeholder, row.entry.warning label.separator, row.entry.warning row.property > box.header > box.title > .title, row.entry.warning row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.entry.warning box > list > row > box.header > box.title > .title, row.entry.warning .subtitle, row.spin.warning .dim-label, row.spin.warning scale > value, row.spin.warning progressbar > text, row.spin.warning row.expander image.expander-row-arrow, row.expander row.spin.warning image.expander-row-arrow, row.spin.warning spinbutton > text > placeholder, row.spin.warning entry > text > placeholder, row.spin.warning label.separator, row.spin.warning row.property > box.header > box.title > .title, row.spin.warning row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.spin.warning box > list > row > box.header > box.title > .title, row.spin.warning .subtitle { opacity: 1; } + +row.entry.warning .suggested-action, row.spin.warning .suggested-action { background-color: @warning_bg_color; color: @warning_fg_color; } + +row.entry.success, row.spin.success { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.entry.success.focused, row.spin.success.focused { outline-color: alpha(currentColor,0.8); outline-width: 2px; outline-offset: -1px; } + +row.entry.success text > selection:focus-within, row.spin.success text > selection:focus-within { background-color: alpha(@success_color,0.2); } + +row.entry.success text > cursor-handle > contents, row.spin.success text > cursor-handle > contents { background-color: currentColor; } + +row.entry.success .dim-label, row.entry.success scale > value, row.entry.success progressbar > text, row.entry.success row.expander image.expander-row-arrow, row.expander row.entry.success image.expander-row-arrow, row.entry.success spinbutton > text > placeholder, row.entry.success entry > text > placeholder, row.entry.success label.separator, row.entry.success row.property > box.header > box.title > .title, row.entry.success row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.entry.success box > list > row > box.header > box.title > .title, row.entry.success .subtitle, row.spin.success .dim-label, row.spin.success scale > value, row.spin.success progressbar > text, row.spin.success row.expander image.expander-row-arrow, row.expander row.spin.success image.expander-row-arrow, row.spin.success spinbutton > text > placeholder, row.spin.success entry > text > placeholder, row.spin.success label.separator, row.spin.success row.property > box.header > box.title > .title, row.spin.success row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.spin.success box > list > row > box.header > box.title > .title, row.spin.success .subtitle { opacity: 1; } + +row.entry.success .suggested-action, row.spin.success .suggested-action { background-color: @success_bg_color; color: @success_fg_color; } + +/*************** AdwComboRow * */ +row.combo image.dropdown-arrow:disabled { filter: opacity(0.4); } + +row.combo listview.inline { background: none; border: none; box-shadow: none; color: inherit; } + +row.combo listview.inline, row.combo listview.inline:disabled { background: none; color: inherit; } + +row.combo popover > contents { min-width: 120px; } + +row.combo popover > contents .combo-searchbar { margin: 6px; } + +row.combo popover > contents .combo-searchbar + scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +/****************** AdwExpanderRow * */ +list.boxed-list > row, list.content > row, list.boxed-list > row.expander row.header, list.content > row.expander row.header, row.expander list.nested > row { border-bottom: 1px solid alpha(currentColor,0.5); } + +list.boxed-list > row, list.content > row, list.boxed-list > row.expander row.header, list.content > row.expander row.header, row.expander list.nested > row { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +list.boxed-list > row:focus:focus-visible, list.content > row:focus:focus-visible, list.boxed-list > row.expander row.header:focus:focus-visible, list.content > row.expander row.header:focus:focus-visible, row.expander list.nested > row:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -1px; } + +.osd list.boxed-list > row:focus:focus-visible, .osd list.content > row:focus:focus-visible, .osd list.boxed-list > row.expander row.header:focus:focus-visible, list.boxed-list > row.expander .osd row.header:focus:focus-visible, .osd list.content > row.expander row.header:focus:focus-visible, list.content > row.expander .osd row.header:focus:focus-visible, .osd row.expander list.nested > row:focus:focus-visible, row.expander .osd list.nested > row:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +list.boxed-list > row.activatable:not(:selected):hover, list.content > row.activatable:not(:selected):hover, list.boxed-list > row.expander row.header.activatable:not(:selected):hover, list.content > row.expander row.header.activatable:not(:selected):hover, row.expander list.nested > row.activatable:not(:selected):hover { background-color: alpha(currentColor,0.03); } + +list.boxed-list > row.activatable:not(:selected):active, list.content > row.activatable:not(:selected):active, list.boxed-list > row.expander row.header.activatable:not(:selected):active, list.content > row.expander row.header.activatable:not(:selected):active, row.expander list.nested > row.activatable:not(:selected):active { background-color: alpha(currentColor,0.08); } + +list.boxed-list > row.activatable.has-open-popup:not(:selected), list.content > row.activatable.has-open-popup:not(:selected), list.boxed-list > row.expander row.header.activatable.has-open-popup:not(:selected), list.content > row.expander row.header.activatable.has-open-popup:not(:selected), row.expander list.nested > row.activatable.has-open-popup:not(:selected) { background-color: alpha(currentColor,0.03); } + +row.expander { background: none; padding: 0px; } + +row.expander > box > list { background: none; color: inherit; } + +row.expander list.nested { background-color: alpha(@card_shade_color,0.5); color: inherit; } + +row.expander image.expander-row-arrow { transition: -gtk-icon-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.expander image.expander-row-arrow:dir(ltr) { margin-left: 3px; } + +row.expander image.expander-row-arrow:dir(rtl) { margin-right: 3px; } + +row.expander image.expander-row-arrow:dir(ltr) { -gtk-icon-transform: rotate(0.5turn); } + +row.expander image.expander-row-arrow:dir(rtl) { -gtk-icon-transform: rotate(-0.5turn); } + +row.expander image.expander-row-arrow:disabled { filter: opacity(0.4); } + +row.expander:checked image.expander-row-arrow { -gtk-icon-transform: rotate(0turn); opacity: 1; } + +row.expander:checked image.expander-row-arrow:not(:disabled) { color: @accent_color; } + +.osd row.expander:checked image.expander-row-arrow:not(:disabled) { color: inherit; } + +/***************** Boxed Lists * */ +list.boxed-list > row.expander, list.content > row.expander { border: none; } + +list.boxed-list > row:first-child, list.content > row:first-child, list.boxed-list > row.expander:first-child row.header, list.content > row.expander:first-child row.header { border-top-left-radius: 12px; border-top-right-radius: 12px; } + +list.boxed-list > row:last-child, list.content > row:last-child, list.boxed-list > row.expander:last-child:not(:checked), list.boxed-list > row.expander:last-child:not(:checked) row.header, list.content > row.expander:last-child:not(:checked) row.header, list.boxed-list > row.expander:last-child:checked list.nested, list.content > row.expander:last-child:checked list.nested, list.boxed-list > row.expander:last-child:checked list.nested > row:last-child, list.content > row.expander:last-child:checked list.nested > row:last-child { border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; border-bottom-width: 0; } + +popover.menu > contents { min-width: 120px; } + +popover.menu scrollbar.vertical > range > trough > slider { min-height: 30px; } + +popover.menu box.inline-buttons { padding: 0 12px; } + +popover.menu box.inline-buttons button.image-button.model { min-height: 32px; min-width: 32px; padding: 0; border: none; outline: none; transition: none; } + +popover.menu box.inline-buttons button.image-button.model:selected { background-color: alpha(currentColor,0.1); } + +popover.menu box.inline-buttons button.image-button.model:selected:active { background-color: alpha(currentColor,0.19); } + +popover.menu box.circular-buttons { padding: 12px 12px 6px; } + +popover.menu box.circular-buttons button.circular.image-button.model { outline: none; padding: 11px; box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +popover.menu box.circular-buttons button.circular.image-button.model:selected { background-color: alpha(currentColor,0.13); } + +popover.menu box.circular-buttons button.circular.image-button.model:selected:active { background-color: alpha(currentColor,0.19); } + +popover.menu > contents { padding: 0; } + +popover.menu > contents > stack > box, popover.menu > contents > scrolledwindow > viewport > stack > box { padding: 6px; } + +popover.menu separator { margin: 6px 0; } + +popover.menu list separator { margin: 0; } + +popover.menu accelerator { color: alpha(currentColor,0.9); } + +popover.menu accelerator:dir(ltr) { margin-left: 12px; } + +popover.menu accelerator:dir(rtl) { margin-right: 12px; } + +popover.menu check, popover.menu radio { min-width: 14px; min-height: 14px; -gtk-icon-size: 14px; padding: 2px; } + +popover.menu check, popover.menu check:hover:checked, popover.menu check:hover:indeterminate, popover.menu check:hover:not(:checked):not(:indeterminate), popover.menu check:active:checked, popover.menu check:active:indeterminate, popover.menu check:active:not(:checked):not(:indeterminate), popover.menu radio, popover.menu radio:hover:checked, popover.menu radio:hover:indeterminate, popover.menu radio:hover:not(:checked):not(:indeterminate), popover.menu radio:active:checked, popover.menu radio:active:indeterminate, popover.menu radio:active:not(:checked):not(:indeterminate) { background: none; box-shadow: none; color: inherit; } + +.osd popover.menu check, .osd popover.menu radio { background: none; color: inherit; } + +popover.menu radio { padding: 1px; border: 1px solid alpha(currentColor,0.8); } + +popover.menu check.left, popover.menu radio.left, popover.menu arrow.left { margin-left: -2px; margin-right: 6px; } + +popover.menu check.right, popover.menu radio.right, popover.menu arrow.right { margin-left: 6px; margin-right: -2px; } + +popover.menu modelbutton { min-height: 32px; min-width: 40px; padding: 0 12px; border-radius: 6px; } + +popover.menu modelbutton:hover, popover.menu modelbutton:selected { background-color: alpha(currentColor,0.1); } + +popover.menu modelbutton:active { background-color: alpha(currentColor,0.19); } + +popover.menu modelbutton:hover, popover.menu modelbutton:selected, popover.menu modelbutton:active { box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +popover.menu modelbutton arrow { background: none; min-width: 16px; min-height: 16px; opacity: 0.8; } + +popover.menu modelbutton arrow:hover { background: none; } + +popover.menu modelbutton arrow:disabled { filter: opacity(0.4); } + +popover.menu modelbutton arrow.left { -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); } + +popover.menu modelbutton arrow.right { -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); } + +popover.menu label.title { font-weight: bold; padding: 4px 32px; } + +popover.menu list, popover.menu listview { background: none; color: inherit; } + +popover.menu list > row, popover.menu listview > row { border-radius: 6px; padding: 0 12px; min-height: 32px; min-width: 40px; } + +popover.menu list > row:selected, popover.menu listview > row:selected { background: none; } + +popover.menu list > row:hover, popover.menu list > row.activatable:hover:selected, popover.menu listview > row:hover, popover.menu listview > row.activatable:hover:selected { background-color: alpha(currentColor,0.1); } + +popover.menu list > row:active, popover.menu list > row.activatable:active:selected, popover.menu listview > row:active, popover.menu listview > row.activatable:active:selected { background-color: alpha(currentColor,0.19); } + +popover.menu list > row.has-open-popup, popover.menu list > row.has-open-popup.activatable:selected, popover.menu listview > row.has-open-popup, popover.menu listview > row.has-open-popup.activatable:selected { background-color: alpha(currentColor,0.1); } + +popover.menu list > row:hover, popover.menu list > row:active, popover.menu list > row.has-open-popup, popover.menu listview > row:hover, popover.menu listview > row:active, popover.menu listview > row.has-open-popup { box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +popover.menu list > row > box, popover.menu listview > row > box { border-spacing: 6px; } + +popover.menu contents > list, popover.menu contents > listview, popover.menu scrolledwindow > viewport > list, popover.menu scrolledwindow > listview { padding: 6px 0; } + +popover.menu contents > list > row, popover.menu contents > listview > row, popover.menu scrolledwindow > viewport > list > row, popover.menu scrolledwindow > listview > row { margin: 0 6px; padding: 9px 12px; min-height: 0; } + +menubar { box-shadow: inset 0 -1px alpha(currentColor,0.5); padding-bottom: 1px; } + +menubar > item { min-height: 16px; padding: 4px 8px; border-radius: 6px; } + +menubar > item:selected { background-color: alpha(currentColor,0.1); box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +menubar > item popover.menu popover.menu { padding: 0 0 4px 0; } + +menubar > item popover.menu popover.menu > contents { margin: 0; border-radius: 12px; } + +toolbarview > .top-bar menubar, toolbarview > .bottom-bar menubar { box-shadow: none; padding-bottom: 0; } + +/******************** GtkMessageDialog * */ +window.dialog.message .titlebar { min-height: 20px; background: none; box-shadow: none; border-style: none; border-top-left-radius: 7px; border-top-right-radius: 7px; } + +window.dialog.message box.dialog-vbox.vertical { margin-top: 6px; border-spacing: 24px; } + +window.dialog.message box.dialog-vbox.vertical > box > box > box > label.title { font-weight: 800; font-size: 15pt; } + +window.dialog.message.csd { border-bottom-left-radius: 13px; border-bottom-right-radius: 13px; } + +window.dialog.message.csd .dialog-action-area { border-top: 1px solid alpha(currentColor,0.5); margin: 0; border-spacing: 0; } + +window.dialog.message.csd .dialog-action-area > button { padding: 10px 14px; border-radius: 0; border: none; background-clip: padding-box; border-left: 1px solid alpha(currentColor,0.5); } + +window.dialog.message.csd .dialog-action-area > button:first-child { border-bottom-left-radius: 13px; border-left: none; } + +window.dialog.message.csd .dialog-action-area > button:last-child { border-bottom-right-radius: 13px; } + +window.dialog.message.csd .dialog-action-area > button.suggested-action { color: @accent_color; } + +window.dialog.message.csd .dialog-action-area > button.destructive-action { color: @destructive_color; } + +/******************** AdwMessageDialog * */ +window.messagedialog, dialog-host > dialog.alert sheet, window.dialog-window.alert { background-color: @dialog_bg_color; color: @dialog_fg_color; } + +dialog-host > dialog.alert.floating sheet, window.dialog-window.alert { border-radius: 13px; outline: none; } + +window.messagedialog .message-area, dialog.alert .message-area { padding: 24px 30px; border-spacing: 24px; } + +window.messagedialog .message-area.has-heading.has-body, dialog.alert .message-area.has-heading.has-body { border-spacing: 10px; } + +window.messagedialog .response-area > button, dialog.alert .response-area > button { padding: 10px 14px; border-radius: 0; } + +window.messagedialog .response-area > button:hover, window.messagedialog .response-area > button.keyboard-activating, window.messagedialog .response-area > button:active, window.messagedialog .response-area > button:checked, dialog.alert .response-area > button:hover, dialog.alert .response-area > button.keyboard-activating, dialog.alert .response-area > button:active, dialog.alert .response-area > button:checked { box-shadow: none; } + +window.messagedialog .response-area > button.suggested, dialog.alert .response-area > button.suggested { color: @accent_color; } + +window.messagedialog .response-area > button.destructive, dialog.alert .response-area > button.destructive { color: @destructive_color; } + +window.messagedialog .response-area:not(.compact) > button, dialog.alert .response-area:not(.compact) > button { margin-top: -1px; margin-right: -1px; margin-left: -1px; } + +window.messagedialog .response-area:not(.compact) > button:first-child:dir(ltr), window.messagedialog .response-area:not(.compact) > button:last-child:dir(rtl), dialog.alert .response-area:not(.compact) > button:first-child:dir(ltr), dialog.alert .response-area:not(.compact) > button:last-child:dir(rtl) { margin-left: 0; } + +window.messagedialog .response-area:not(.compact) > button:last-child:dir(ltr), window.messagedialog .response-area:not(.compact) > button:first-child:dir(rtl), dialog.alert .response-area:not(.compact) > button:last-child:dir(ltr), dialog.alert .response-area:not(.compact) > button:first-child:dir(rtl) { margin-right: 0; } + +window.messagedialog .response-area.compact > button, dialog.alert .response-area.compact > button { margin-top: -1px; margin-bottom: -1px; } + +window.messagedialog .response-area.compact > button:first-child, dialog.alert .response-area.compact > button:first-child { margin-bottom: 0; } + +window.messagedialog .response-area:not(.compact) > button:first-child:dir(ltr), window.messagedialog .response-area:not(.compact) > button:last-child:dir(rtl), dialog.alert.floating .response-area:not(.compact) > button:first-child:dir(ltr), dialog.alert.floating .response-area:not(.compact) > button:last-child:dir(rtl) { border-bottom-left-radius: 13px; } + +window.messagedialog .response-area:not(.compact) > button:last-child:dir(ltr), window.messagedialog .response-area:not(.compact) > button:first-child:dir(rtl), dialog.alert.floating .response-area:not(.compact) > button:last-child:dir(ltr), dialog.alert.floating .response-area:not(.compact) > button:first-child:dir(rtl) { border-bottom-right-radius: 13px; } + +window.messagedialog .response-area.compact > button:first-child, dialog.alert.floating .response-area.compact > button:first-child { border-bottom-left-radius: 13px; border-bottom-right-radius: 13px; } + +/********** Frames * */ +frame, .frame { border: 1px solid alpha(currentColor,0.5); } + +frame { border-radius: 12px; } + +frame > label { margin: 4px; } + +/************** Separators * */ +separator { background: alpha(currentColor,0.5); min-width: 1px; min-height: 1px; } + +separator.spacer { background: none; } + +separator.spacer.horizontal { min-width: 12px; } + +separator.spacer.vertical { min-height: 12px; } + +/********************* App Notifications * */ +.app-notification { padding: 10px; border-spacing: 10px; border-radius: 0 0 12px 12px; background-color: rgba(0, 0, 0, 0.7); background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), transparent 2px); background-clip: padding-box; } + +.app-notification border { border: none; } + +/********** Toasts * */ +toast { margin: 12px; margin-bottom: 24px; border-radius: 150px; border-spacing: 6px; padding: 6px; box-shadow: 0 0 0 1px alpha(currentColor,0.5); } + +toast:dir(ltr) { padding-left: 12px; } + +toast:dir(rtl) { padding-right: 12px; } + +toast > widget { margin: 0 6px; } + +/************** GtkVideo * */ +video { background: black; } + +video image.osd { min-width: 64px; min-height: 64px; border-radius: 32px; } + +/****************** AdwAboutWindow * */ +window.about .main-page > viewport > clamp > box, dialog.about .main-page > viewport > clamp > box { margin: 12px; border-spacing: 6px; } + +window.about .main-page > viewport > clamp > box > box, dialog.about .main-page > viewport > clamp > box > box { margin-top: 18px; border-spacing: 18px; margin-bottom: 6px; } + +window.about .main-page .app-version, dialog.about .main-page .app-version { padding: 3px 18px; color: @accent_color; border-radius: 999px; margin-top: 3px; } + +window.about .subpage > viewport > clamp > box, dialog.about .subpage > viewport > clamp > box { margin: 18px 12px; border-spacing: 18px; } + +window.about .subpage > clamp > textview, dialog.about .subpage > clamp > textview { background: none; color: inherit; } + +/***************** AdwStatusPage * */ +statuspage > scrolledwindow > viewport > box { margin: 36px 12px; border-spacing: 36px; } + +statuspage > scrolledwindow > viewport > box > clamp > box { border-spacing: 12px; } + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon { -gtk-icon-size: 128px; color: alpha(currentColor,0.9); } + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon:disabled { opacity: 0.4; } + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon:not(:last-child) { margin-bottom: 24px; } + +statuspage.compact > scrolledwindow > viewport > box { margin: 24px 12px; border-spacing: 24px; } + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .icon { -gtk-icon-size: 96px; } + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .icon:not(:last-child) { margin-bottom: 12px; } + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .title { font-size: 18pt; } + +/* Cards */ +shortcut > .keycap, list.boxed-list, list.content, .card { background-color: @card_bg_color; color: @card_fg_color; border-radius: 12px; box-shadow: 0 0 0 1px alpha(currentColor,0.5), 0 1px 3px 1px rgba(0, 0, 0, 0.07), 0 2px 6px 2px rgba(0, 0, 0, 0.03); } + +.osd shortcut > .keycap, .osd list.boxed-list, .osd list.content, shortcut > .osd.keycap, list.osd.boxed-list, list.osd.content, .osd .card, .card.osd { background-color: alpha(currentColor,0.1); color: inherit; box-shadow: 0 0 0 1px alpha(currentColor,0.5); } + +.card { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +.card:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -1px; } + +.osd .card:focus:focus-visible, .card.osd:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +.card.activatable { transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +.card.activatable:hover { background-image: image(alpha(currentColor,0.03)); } + +.card.activatable:active { background-image: image(alpha(currentColor,0.08)); } + +/* Transition shadows */ +flap > dimming, leaflet > dimming, navigation-view > dimming, overlay-split-view > dimming { background: @shade_color; } + +flap > border, leaflet > border, navigation-view > border, overlay-split-view > border { min-width: 1px; min-height: 1px; background: alpha(currentColor,0.5); } + +flap > shadow, leaflet > shadow, navigation-view > shadow, overlay-split-view > shadow { min-width: 56px; min-height: 56px; } + +flap > shadow.left, leaflet > shadow.left, navigation-view > shadow.left, overlay-split-view > shadow.left { background-image: linear-gradient(to right, alpha(@shade_color,0.7), alpha(@shade_color,0.14) 40px, alpha(@shade_color,0) 56px), linear-gradient(to right, alpha(@shade_color,0.4), alpha(@shade_color,0.14) 7px, alpha(@shade_color,0) 24px); } + +flap > shadow.right, leaflet > shadow.right, navigation-view > shadow.right, overlay-split-view > shadow.right { background-image: linear-gradient(to left, alpha(@shade_color,0.7), alpha(@shade_color,0.14) 40px, alpha(@shade_color,0) 56px), linear-gradient(to left, alpha(@shade_color,0.4), alpha(@shade_color,0.14) 7px, alpha(@shade_color,0) 24px); } + +flap > shadow.up, leaflet > shadow.up, navigation-view > shadow.up, overlay-split-view > shadow.up { background-image: linear-gradient(to bottom, alpha(@shade_color,0.7), alpha(@shade_color,0.14) 40px, alpha(@shade_color,0) 56px), linear-gradient(to bottom, alpha(@shade_color,0.4), alpha(@shade_color,0.14) 7px, alpha(@shade_color,0) 24px); } + +flap > shadow.down, leaflet > shadow.down, navigation-view > shadow.down, overlay-split-view > shadow.down { background-image: linear-gradient(to top, alpha(@shade_color,0.7), alpha(@shade_color,0.14) 40px, alpha(@shade_color,0) 56px), linear-gradient(to top, alpha(@shade_color,0.4), alpha(@shade_color,0.14) 7px, alpha(@shade_color,0) 24px); } + +notebook > header > tabs > tab:checked { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +notebook:focus:focus-visible > header > tabs > tab:checked { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +notebook > header { padding: 1px; border-color: alpha(currentColor,0.5); border-width: 1px; background-clip: padding-box; } + +notebook > header > tabs { margin: -1px; } + +notebook > header.top { border-bottom-style: solid; } + +notebook > header.top > tabs { margin-bottom: -2px; } + +notebook > header.top > tabs > tab:hover { box-shadow: inset 0 -4px alpha(currentColor,0.5); } + +notebook > header.top > tabs > tab:checked { box-shadow: inset 0 -4px @accent_bg_color; } + +notebook > header.bottom { border-top-style: solid; } + +notebook > header.bottom > tabs { margin-top: -2px; } + +notebook > header.bottom > tabs > tab:hover { box-shadow: inset 0 4px alpha(currentColor,0.5); } + +notebook > header.bottom > tabs > tab:checked { box-shadow: inset 0 4px @accent_bg_color; } + +notebook > header.left { border-right-style: solid; } + +notebook > header.left > tabs { margin-right: -2px; } + +notebook > header.left > tabs > tab:hover { box-shadow: inset -4px 0 alpha(currentColor,0.5); } + +notebook > header.left > tabs > tab:checked { box-shadow: inset -4px 0 @accent_bg_color; } + +notebook > header.right { border-left-style: solid; } + +notebook > header.right > tabs { margin-left: -2px; } + +notebook > header.right > tabs > tab:hover { box-shadow: inset 4px 0 alpha(currentColor,0.5); } + +notebook > header.right > tabs > tab:checked { box-shadow: inset 4px 0 @accent_bg_color; } + +notebook > header.top > tabs > arrow { border-top-style: none; } + +notebook > header.bottom > tabs > arrow { border-bottom-style: none; } + +notebook > header.top > tabs > arrow, notebook > header.bottom > tabs > arrow { margin-left: -5px; margin-right: -5px; padding-left: 4px; padding-right: 4px; } + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); } + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +notebook > header.left > tabs > arrow { border-left-style: none; } + +notebook > header.right > tabs > arrow { border-right-style: none; } + +notebook > header.left > tabs > arrow, notebook > header.right > tabs > arrow { margin-top: -5px; margin-bottom: -5px; padding-top: 4px; padding-bottom: 4px; } + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +notebook > header > tabs > arrow { min-height: 16px; min-width: 16px; border-radius: 0; } + +notebook > header > tabs > arrow:hover:not(:active) { box-shadow: none; } + +notebook > header > tabs > tab { transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); min-height: 30px; min-width: 30px; padding: 3px 12px; font-weight: normal; } + +notebook > header > tabs > tab:hover, notebook > header > tabs > tab:active { background-color: alpha(currentColor,0.07); } + +notebook > header > tabs > tab:not(:checked) { outline-color: transparent; } + +notebook > header > tabs > tab:disabled { filter: opacity(0.4); } + +notebook > header > tabs > tab:disabled label, notebook > header > tabs > tab:disabled button { filter: none; } + +notebook > header > tabs > tab button.flat { color: alpha(currentColor,0.3); padding: 0; margin-top: 4px; margin-bottom: 4px; min-width: 20px; min-height: 20px; } + +notebook > header > tabs > tab button.flat:hover, notebook > header > tabs > tab button.flat:active { color: currentColor; } + +notebook > header > tabs > tab button.flat:last-child { margin-left: 4px; margin-right: -4px; } + +notebook > header > tabs > tab button.flat:first-child { margin-left: -4px; margin-right: 4px; } + +notebook > header.top > tabs, notebook > header.bottom > tabs { padding-left: 4px; padding-right: 4px; } + +notebook > header.top > tabs:not(:only-child), notebook > header.bottom > tabs:not(:only-child) { margin-left: 3px; margin-right: 3px; } + +notebook > header.top > tabs:not(:only-child):first-child, notebook > header.bottom > tabs:not(:only-child):first-child { margin-left: -1px; } + +notebook > header.top > tabs:not(:only-child):last-child, notebook > header.bottom > tabs:not(:only-child):last-child { margin-right: -1px; } + +notebook > header.top > tabs > tab, notebook > header.bottom > tabs > tab { margin-left: 4px; margin-right: 4px; } + +notebook > header.left > tabs, notebook > header.right > tabs { padding-top: 4px; padding-bottom: 4px; } + +notebook > header.left > tabs:not(:only-child), notebook > header.right > tabs:not(:only-child) { margin-top: 3px; margin-bottom: 3px; } + +notebook > header.left > tabs:not(:only-child):first-child, notebook > header.right > tabs:not(:only-child):first-child { margin-top: -1px; } + +notebook > header.left > tabs:not(:only-child):last-child, notebook > header.right > tabs:not(:only-child):last-child { margin-bottom: -1px; } + +notebook > header.left > tabs > tab, notebook > header.right > tabs > tab { margin-top: 4px; margin-bottom: 4px; } + +notebook > header.top > tabs > tab { padding-bottom: 4px; } + +notebook > header.bottom > tabs > tab { padding-top: 4px; } + +notebook > stack:not(:only-child) { background-color: @view_bg_color; } + +paned > separator { min-width: 1px; min-height: 1px; background: none; background-size: 1px 1px; } + +paned > separator.wide { min-width: 5px; min-height: 5px; } + +paned.horizontal > separator:dir(ltr) { margin: 0 -8px 0 0; padding: 0 8px 0 0; box-shadow: inset 1px 0 alpha(currentColor,0.5); } + +paned.horizontal > separator:dir(rtl) { margin: 0 0 0 -8px; padding: 0 0 0 8px; box-shadow: inset -1px 0 alpha(currentColor,0.5); } + +paned.horizontal > separator.wide { margin: 0; padding: 0; box-shadow: inset 1px 0 alpha(currentColor,0.5), inset -1px 0 alpha(currentColor,0.5); } + +paned.vertical > separator { margin: 0 0 -8px 0; padding: 0 0 8px 0; box-shadow: inset 0 1px alpha(currentColor,0.5); } + +paned.vertical > separator.wide { margin: 0; padding: 0; box-shadow: inset 0 1px alpha(currentColor,0.5), inset 0 -1px alpha(currentColor,0.5); } + +toolbarview.undershoot-top popover scrolledwindow undershoot.top, toolbarview.undershoot-bottom popover scrolledwindow undershoot.bottom { background: none; box-shadow: none; } + +popover.background { background-color: transparent; font: initial; } + +popover > arrow, popover > contents { background-color: @popover_bg_color; color: @popover_fg_color; background-clip: padding-box; border: 1px solid alpha(currentColor,0.5); box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05); } + +popover > contents { padding: 8px; border-radius: 12px; } + +popover > contents > list, popover > contents > .view, window.print popover > contents > .dialog-action-box, popover > contents > toolbar { border-style: none; background-color: transparent; } + +.osd popover, popover.touch-selection, popover.magnifier { background-color: transparent; } + +.osd popover > arrow, .osd popover > contents, popover.touch-selection > arrow, popover.touch-selection > contents, popover.magnifier > arrow, popover.magnifier > contents { border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: none; } + +popover toolbarview.undershoot-top scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-top > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-bottom > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { box-shadow: inset 1px 0 alpha(currentColor,0.5); background: linear-gradient(to right, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { box-shadow: inset -1px 0 alpha(currentColor,0.5); background: linear-gradient(to left, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { box-shadow: inset -1px 0 alpha(currentColor,0.5); background: linear-gradient(to left, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { box-shadow: inset 1px 0 alpha(currentColor,0.5); background: linear-gradient(to right, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover flap > dimming, popover leaflet > dimming, popover navigation-view > dimming, popover overlay-split-view > dimming { background: @popover_shade_color; } + +popover flap > border, popover leaflet > border, popover navigation-view > border, popover overlay-split-view > border { min-width: 1px; min-height: 1px; background: alpha(currentColor,0.5); } + +popover flap > shadow, popover leaflet > shadow, popover navigation-view > shadow, popover overlay-split-view > shadow { min-width: 56px; min-height: 56px; } + +popover flap > shadow.left, popover leaflet > shadow.left, popover navigation-view > shadow.left, popover overlay-split-view > shadow.left { background-image: linear-gradient(to right, alpha(@popover_shade_color,0.7), alpha(@popover_shade_color,0.14) 40px, alpha(@popover_shade_color,0) 56px), linear-gradient(to right, alpha(@popover_shade_color,0.4), alpha(@popover_shade_color,0.14) 7px, alpha(@popover_shade_color,0) 24px); } + +popover flap > shadow.right, popover leaflet > shadow.right, popover navigation-view > shadow.right, popover overlay-split-view > shadow.right { background-image: linear-gradient(to left, alpha(@popover_shade_color,0.7), alpha(@popover_shade_color,0.14) 40px, alpha(@popover_shade_color,0) 56px), linear-gradient(to left, alpha(@popover_shade_color,0.4), alpha(@popover_shade_color,0.14) 7px, alpha(@popover_shade_color,0) 24px); } + +popover flap > shadow.up, popover leaflet > shadow.up, popover navigation-view > shadow.up, popover overlay-split-view > shadow.up { background-image: linear-gradient(to bottom, alpha(@popover_shade_color,0.7), alpha(@popover_shade_color,0.14) 40px, alpha(@popover_shade_color,0) 56px), linear-gradient(to bottom, alpha(@popover_shade_color,0.4), alpha(@popover_shade_color,0.14) 7px, alpha(@popover_shade_color,0) 24px); } + +popover flap > shadow.down, popover leaflet > shadow.down, popover navigation-view > shadow.down, popover overlay-split-view > shadow.down { background-image: linear-gradient(to top, alpha(@popover_shade_color,0.7), alpha(@popover_shade_color,0.14) 40px, alpha(@popover_shade_color,0) 56px), linear-gradient(to top, alpha(@popover_shade_color,0.4), alpha(@popover_shade_color,0.14) 7px, alpha(@popover_shade_color,0) 24px); } + +preferencespage > scrolledwindow > viewport > clamp > box { margin: 24px 12px; border-spacing: 24px; } + +preferencesgroup > box, preferencesgroup > box .labels { border-spacing: 6px; } + +preferencesgroup > box > box.header:not(.single-line) { margin-bottom: 6px; } + +preferencesgroup > box > box.single-line { min-height: 34px; } + +progressbar.horizontal > trough { min-width: 150px; } + +progressbar.horizontal > trough, progressbar.horizontal > trough > progress { min-height: 8px; } + +progressbar.vertical > trough { min-height: 80px; } + +progressbar.vertical > trough, progressbar.vertical > trough > progress { min-width: 8px; } + +progressbar > text { font-size: smaller; } + +progressbar:disabled { filter: opacity(0.4); } + +progressbar > trough > progress { /* share most of scales' */ border-radius: 99px; } + +progressbar > trough > progress.left { border-top-left-radius: 99px; border-bottom-left-radius: 99px; } + +progressbar > trough > progress.right { border-top-right-radius: 99px; border-bottom-right-radius: 99px; } + +progressbar > trough > progress.top { border-top-right-radius: 99px; border-top-left-radius: 99px; } + +progressbar > trough > progress.bottom { border-bottom-right-radius: 99px; border-bottom-left-radius: 99px; } + +progressbar.osd { min-width: 2px; min-height: 2px; background-color: transparent; color: inherit; } + +progressbar.osd > trough { border-style: none; border-radius: 0; background-color: transparent; box-shadow: none; } + +progressbar.osd > trough > progress { border-style: none; border-radius: 0; } + +progressbar.osd.horizontal > trough, progressbar.osd.horizontal > trough > progress { min-height: 2px; } + +progressbar.osd.vertical > trough, progressbar.osd.vertical > trough > progress { min-width: 2px; } + +progressbar > trough.empty > progress { all: unset; } + +.osd progressbar > trough > progress { background-color: rgba(255, 255, 255, 0.75); } + +scale > trough > fill, scale > trough, progressbar > trough { border-radius: 99px; background-color: alpha(currentColor,0.3); box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +scale > trough > highlight, progressbar > trough > progress { border-radius: 99px; background-color: @accent_bg_color; color: @accent_fg_color; } + +scale { min-height: 10px; min-width: 10px; padding: 12px; } + +scale > trough > slider { outline: 0 solid transparent; outline-offset: 6px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +scale:focus:focus-visible > trough > slider { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: 0; } + +scale > trough > slider { background-color: mix(white,@view_bg_color,0.2); box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.35), 0 2px 4px rgba(0, 0, 0, 0.2); border-radius: 100%; min-width: 20px; min-height: 20px; margin: -8px; } + +scale:hover > trough, scale:active > trough { background-color: alpha(currentColor,0.4); } + +scale:hover > trough > highlight, scale:active > trough > highlight { background-image: image(alpha(currentColor,0.1)); } + +scale:hover > trough > slider, scale:active > trough > slider { background-color: white; } + +.osd scale:focus:focus-visible > trough { outline-color: rgba(255, 255, 255, 0.5); } + +.osd scale > trough > highlight { background-color: rgba(255, 255, 255, 0.75); color: rgba(0, 0, 0, 0.75); } + +scale:disabled { filter: opacity(0.4); } + +scale:disabled > trough > slider { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.35), 0 2px 4px transparent; outline-color: rgba(0, 0, 0, 0.5); } + +scale.fine-tune { padding: 9px; } + +scale.fine-tune.horizontal { min-height: 16px; } + +scale.fine-tune.vertical { min-width: 16px; } + +scale.fine-tune > trough > slider { margin: -5px; } + +scale.marks-before:not(.marks-after) > trough > slider, scale.marks-after:not(.marks-before) > trough > slider { transform: rotate(45deg); box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.35), 1px 1px 4px rgba(0, 0, 0, 0.2); } + +scale.marks-before:not(.marks-after) > trough > slider:disabled, scale.marks-after:not(.marks-before) > trough > slider:disabled { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.35), 1px 1px 4px transparent; } + +scale.horizontal > marks { color: alpha(currentColor,0.9); } + +scale.horizontal > marks.top { margin-bottom: 6px; } + +scale.horizontal > marks.bottom { margin-top: 6px; } + +scale.horizontal > marks indicator { background-color: currentColor; min-height: 6px; min-width: 1px; } + +scale.horizontal > value.left { margin-right: 9px; } + +scale.horizontal > value.right { margin-left: 9px; } + +scale.horizontal.fine-tune > marks.top { margin-top: 3px; } + +scale.horizontal.fine-tune > marks.bottom { margin-bottom: 3px; } + +scale.horizontal.fine-tune > marks indicator { min-height: 3px; } + +scale.horizontal.marks-before { padding-top: 0; } + +scale.horizontal.marks-before > trough > slider { border-top-left-radius: 0; } + +scale.horizontal.marks-after { padding-bottom: 0; } + +scale.horizontal.marks-after > trough > slider { border-bottom-right-radius: 0; } + +scale.horizontal.marks-before.marks-after > trough > slider { border-radius: 100%; } + +scale.vertical > marks { color: alpha(currentColor,0.9); } + +scale.vertical > marks.top { margin-right: 6px; } + +scale.vertical > marks.bottom { margin-left: 6px; } + +scale.vertical > marks indicator { background-color: currentColor; min-height: 1px; min-width: 6px; } + +scale.vertical > value.top { margin-bottom: 9px; } + +scale.vertical > value.bottom { margin-top: 9px; } + +scale.vertical.fine-tune > marks.top { margin-left: 3px; } + +scale.vertical.fine-tune > marks.bottom { margin-right: 3px; } + +scale.vertical.fine-tune > marks indicator { min-height: 3px; } + +scale.vertical.marks-before { padding-left: 0; } + +scale.vertical.marks-before > trough > slider { border-bottom-left-radius: 0; } + +scale.vertical.marks-after { padding-right: 0; } + +scale.vertical.marks-after > trough > slider { border-top-right-radius: 0; } + +scale.color { padding: 0; } + +scale.color > trough { border: none; background: none; border-radius: 10px; } + +scale.color > trough > slider { margin: 0; background-color: rgba(255, 255, 255, 0.8); } + +scale.color.fine-tune { padding: 2px; } + +scale.color.fine-tune > trough > slider { margin: -2px; } + +scrollbar > range > trough { margin: 7px; transition: all 200ms linear; border-radius: 10px; } + +scrollbar > range > trough > slider { min-width: 8px; min-height: 8px; margin: -6px; border: 6px solid transparent; border-radius: 10px; background-clip: padding-box; transition: all 200ms linear; background-color: alpha(currentColor,0.4); } + +scrollbar > range > trough > slider:hover { background-color: alpha(currentColor,0.6); } + +scrollbar > range > trough > slider:active { background-color: currentColor; } + +scrollbar > range > trough > slider:disabled { opacity: 0; } + +scrollbar.horizontal > range > trough { margin-top: 6px; margin-bottom: 6px; } + +scrollbar.vertical > range > trough { margin-left: 6px; margin-right: 6px; } + +scrollbar.overlay-indicator { background: none; color: inherit; box-shadow: none; padding: 0; } + +scrollbar.overlay-indicator > range > trough { outline: 1px solid transparent; } + +scrollbar.overlay-indicator > range > trough > slider { outline: 1px solid @scrollbar_outline_color; outline-offset: -6px; } + +.osd scrollbar.overlay-indicator > range > trough > slider { outline: 1px solid rgba(0, 0, 0, 0.5); } + +scrollbar.overlay-indicator:not(.hovering) > range > trough > slider { min-width: 3px; min-height: 3px; outline-color: alpha(@scrollbar_outline_color,0.6); } + +.osd scrollbar.overlay-indicator:not(.hovering) > range > trough > slider { outline-color: alpha(rgba(0, 0, 0, 0.5),0.6); } + +scrollbar.overlay-indicator.hovering > range > trough { background-color: alpha(currentColor,0.25); } + +scrollbar.overlay-indicator.horizontal > range > trough > slider { min-width: 40px; } + +scrollbar.overlay-indicator.horizontal.hovering > range > trough > slider { min-height: 8px; } + +scrollbar.overlay-indicator.horizontal:not(.hovering) > range > trough { margin-top: 3px; margin-bottom: 3px; } + +scrollbar.overlay-indicator.vertical > range > trough > slider { min-height: 40px; } + +scrollbar.overlay-indicator.vertical.hovering > range > trough > slider { min-width: 8px; } + +scrollbar.overlay-indicator.vertical:not(.hovering) > range > trough { margin-left: 3px; margin-right: 3px; } + +scrollbar.horizontal > range > trough > slider { min-width: 40px; } + +scrollbar.vertical > range > trough > slider { min-height: 40px; } + +scrollbar > range.fine-tune > trough > slider, scrollbar > range.fine-tune > trough > slider:hover, scrollbar > range.fine-tune > trough > slider:active { background-color: @accent_color; } + +scrolledwindow > overshoot.top { background-image: radial-gradient(farthest-side at top, alpha(currentColor,0.12) 85%, alpha(currentColor,0)), radial-gradient(farthest-side at top, alpha(currentColor,0.05), alpha(currentColor,0)); background-size: 100% 3%, 100% 50%; background-repeat: no-repeat; background-position: top; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > overshoot.bottom { background-image: radial-gradient(farthest-side at bottom, alpha(currentColor,0.12) 85%, alpha(currentColor,0)), radial-gradient(farthest-side at bottom, alpha(currentColor,0.05), alpha(currentColor,0)); background-size: 100% 3%, 100% 50%; background-repeat: no-repeat; background-position: bottom; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > overshoot.left { background-image: radial-gradient(farthest-side at left, alpha(currentColor,0.12) 85%, alpha(currentColor,0)), radial-gradient(farthest-side at left, alpha(currentColor,0.05), alpha(currentColor,0)); background-size: 3% 100%, 50% 100%; background-repeat: no-repeat; background-position: left; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > overshoot.right { background-image: radial-gradient(farthest-side at right, alpha(currentColor,0.12) 85%, alpha(currentColor,0)), radial-gradient(farthest-side at right, alpha(currentColor,0.05), alpha(currentColor,0)); background-size: 3% 100%, 50% 100%; background-repeat: no-repeat; background-position: right; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow.undershoot-top > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-bottom > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { box-shadow: inset 1px 0 alpha(currentColor,0.5); background: linear-gradient(to right, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { box-shadow: inset -1px 0 alpha(currentColor,0.5); background: linear-gradient(to left, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { box-shadow: inset -1px 0 alpha(currentColor,0.5); background: linear-gradient(to left, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { box-shadow: inset 1px 0 alpha(currentColor,0.5); background: linear-gradient(to right, alpha(@shade_color,0.75), transparent 4px); } + +shortcuts-section { margin: 20px; } + +.shortcuts-search-results { margin: 20px; border-spacing: 24px; } + +shortcut { border-spacing: 6px; border-radius: 6px; } + +shortcut { outline: 0 solid transparent; outline-offset: 8px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +shortcut:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: 4px; } + +shortcut > .keycap { min-width: 20px; min-height: 25px; padding: 2px 6px; border-radius: 6px; font-size: smaller; } + +shortcuts-section stackswitcher.circular { border-spacing: 12px; } + +shortcuts-section stackswitcher.circular > button.circular, shortcuts-section stackswitcher.circular > button.text-button.circular { min-width: 32px; min-height: 32px; padding: 0; } + +window.shortcuts headerbar.titlebar > windowhandle { padding-top: 3px; } + +window.shortcuts searchbar { background: none; } + +.sidebar-pane { background-color: @sidebar_bg_color; color: @sidebar_fg_color; } + +.sidebar-pane:backdrop { background-color: @sidebar_backdrop_color; transition: background-color 200ms ease-out; } + +.sidebar-pane toolbarview.undershoot-top scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-top > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-bottom > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { box-shadow: inset 1px 0 alpha(currentColor,0.5); background: linear-gradient(to right, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { box-shadow: inset -1px 0 alpha(currentColor,0.5); background: linear-gradient(to left, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { box-shadow: inset -1px 0 alpha(currentColor,0.5); background: linear-gradient(to left, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { box-shadow: inset 1px 0 alpha(currentColor,0.5); background: linear-gradient(to right, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane flap > dimming, .sidebar-pane leaflet > dimming, .sidebar-pane navigation-view > dimming, .sidebar-pane overlay-split-view > dimming { background: @sidebar_shade_color; } + +.sidebar-pane flap > border, .sidebar-pane leaflet > border, .sidebar-pane navigation-view > border, .sidebar-pane overlay-split-view > border { min-width: 1px; min-height: 1px; background: alpha(currentColor,0.5); } + +.sidebar-pane flap > shadow, .sidebar-pane leaflet > shadow, .sidebar-pane navigation-view > shadow, .sidebar-pane overlay-split-view > shadow { min-width: 56px; min-height: 56px; } + +.sidebar-pane flap > shadow.left, .sidebar-pane leaflet > shadow.left, .sidebar-pane navigation-view > shadow.left, .sidebar-pane overlay-split-view > shadow.left { background-image: linear-gradient(to right, alpha(@sidebar_shade_color,0.7), alpha(@sidebar_shade_color,0.14) 40px, alpha(@sidebar_shade_color,0) 56px), linear-gradient(to right, alpha(@sidebar_shade_color,0.4), alpha(@sidebar_shade_color,0.14) 7px, alpha(@sidebar_shade_color,0) 24px); } + +.sidebar-pane flap > shadow.right, .sidebar-pane leaflet > shadow.right, .sidebar-pane navigation-view > shadow.right, .sidebar-pane overlay-split-view > shadow.right { background-image: linear-gradient(to left, alpha(@sidebar_shade_color,0.7), alpha(@sidebar_shade_color,0.14) 40px, alpha(@sidebar_shade_color,0) 56px), linear-gradient(to left, alpha(@sidebar_shade_color,0.4), alpha(@sidebar_shade_color,0.14) 7px, alpha(@sidebar_shade_color,0) 24px); } + +.sidebar-pane flap > shadow.up, .sidebar-pane leaflet > shadow.up, .sidebar-pane navigation-view > shadow.up, .sidebar-pane overlay-split-view > shadow.up { background-image: linear-gradient(to bottom, alpha(@sidebar_shade_color,0.7), alpha(@sidebar_shade_color,0.14) 40px, alpha(@sidebar_shade_color,0) 56px), linear-gradient(to bottom, alpha(@sidebar_shade_color,0.4), alpha(@sidebar_shade_color,0.14) 7px, alpha(@sidebar_shade_color,0) 24px); } + +.sidebar-pane flap > shadow.down, .sidebar-pane leaflet > shadow.down, .sidebar-pane navigation-view > shadow.down, .sidebar-pane overlay-split-view > shadow.down { background-image: linear-gradient(to top, alpha(@sidebar_shade_color,0.7), alpha(@sidebar_shade_color,0.14) 40px, alpha(@sidebar_shade_color,0) 56px), linear-gradient(to top, alpha(@sidebar_shade_color,0.4), alpha(@sidebar_shade_color,0.14) 7px, alpha(@sidebar_shade_color,0) 24px); } + +.sidebar-pane banner > revealer > widget { background-color: mix(@accent_bg_color,@sidebar_bg_color,0.7); color: @sidebar_fg_color; } + +.sidebar-pane banner > revealer > widget:backdrop { background-color: mix(@accent_bg_color,@sidebar_backdrop_color,0.85); } + +.sidebar-pane:dir(ltr), .sidebar-pane:dir(ltr) banner > revealer > widget, .sidebar-pane.end:dir(rtl), .sidebar-pane.end:dir(rtl) banner > revealer > widget { box-shadow: inset -1px 0 alpha(currentColor,0.5); } + +.sidebar-pane:dir(rtl), .sidebar-pane:dir(rtl) banner > revealer > widget, .sidebar-pane.end:dir(ltr), .sidebar-pane.end:dir(ltr) banner > revealer > widget { box-shadow: inset 1px 0 alpha(currentColor,0.5); } + +/* Middle pane in three-pane setups */ +.content-pane .sidebar-pane, .sidebar-pane .content-pane { background-color: @secondary_sidebar_bg_color; color: @secondary_sidebar_fg_color; } + +.content-pane .sidebar-pane:backdrop, .sidebar-pane .content-pane:backdrop { background-color: @secondary_sidebar_backdrop_color; transition: background-color 200ms ease-out; } + +.content-pane .sidebar-pane toolbarview.undershoot-top scrolledwindow > undershoot.top, .sidebar-pane .content-pane toolbarview.undershoot-top scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom, .sidebar-pane .content-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-top > undershoot.top, .sidebar-pane .content-pane scrolledwindow.undershoot-top > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-bottom > undershoot.bottom, .sidebar-pane .content-pane scrolledwindow.undershoot-bottom > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left, .sidebar-pane .content-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { box-shadow: inset 1px 0 alpha(currentColor,0.5); background: linear-gradient(to right, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right, .sidebar-pane .content-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { box-shadow: inset -1px 0 alpha(currentColor,0.5); background: linear-gradient(to left, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right, .sidebar-pane .content-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { box-shadow: inset -1px 0 alpha(currentColor,0.5); background: linear-gradient(to left, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left, .sidebar-pane .content-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { box-shadow: inset 1px 0 alpha(currentColor,0.5); background: linear-gradient(to right, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane flap > dimming, .content-pane .sidebar-pane leaflet > dimming, .content-pane .sidebar-pane navigation-view > dimming, .content-pane .sidebar-pane overlay-split-view > dimming, .sidebar-pane .content-pane flap > dimming, .sidebar-pane .content-pane leaflet > dimming, .sidebar-pane .content-pane navigation-view > dimming, .sidebar-pane .content-pane overlay-split-view > dimming { background: @secondary_sidebar_shade_color; } + +.content-pane .sidebar-pane flap > border, .content-pane .sidebar-pane leaflet > border, .content-pane .sidebar-pane navigation-view > border, .content-pane .sidebar-pane overlay-split-view > border, .sidebar-pane .content-pane flap > border, .sidebar-pane .content-pane leaflet > border, .sidebar-pane .content-pane navigation-view > border, .sidebar-pane .content-pane overlay-split-view > border { min-width: 1px; min-height: 1px; background: alpha(currentColor,0.5); } + +.content-pane .sidebar-pane flap > shadow, .content-pane .sidebar-pane leaflet > shadow, .content-pane .sidebar-pane navigation-view > shadow, .content-pane .sidebar-pane overlay-split-view > shadow, .sidebar-pane .content-pane flap > shadow, .sidebar-pane .content-pane leaflet > shadow, .sidebar-pane .content-pane navigation-view > shadow, .sidebar-pane .content-pane overlay-split-view > shadow { min-width: 56px; min-height: 56px; } + +.content-pane .sidebar-pane flap > shadow.left, .content-pane .sidebar-pane leaflet > shadow.left, .content-pane .sidebar-pane navigation-view > shadow.left, .content-pane .sidebar-pane overlay-split-view > shadow.left, .sidebar-pane .content-pane flap > shadow.left, .sidebar-pane .content-pane leaflet > shadow.left, .sidebar-pane .content-pane navigation-view > shadow.left, .sidebar-pane .content-pane overlay-split-view > shadow.left { background-image: linear-gradient(to right, alpha(@secondary_sidebar_shade_color,0.7), alpha(@secondary_sidebar_shade_color,0.14) 40px, alpha(@secondary_sidebar_shade_color,0) 56px), linear-gradient(to right, alpha(@secondary_sidebar_shade_color,0.4), alpha(@secondary_sidebar_shade_color,0.14) 7px, alpha(@secondary_sidebar_shade_color,0) 24px); } + +.content-pane .sidebar-pane flap > shadow.right, .content-pane .sidebar-pane leaflet > shadow.right, .content-pane .sidebar-pane navigation-view > shadow.right, .content-pane .sidebar-pane overlay-split-view > shadow.right, .sidebar-pane .content-pane flap > shadow.right, .sidebar-pane .content-pane leaflet > shadow.right, .sidebar-pane .content-pane navigation-view > shadow.right, .sidebar-pane .content-pane overlay-split-view > shadow.right { background-image: linear-gradient(to left, alpha(@secondary_sidebar_shade_color,0.7), alpha(@secondary_sidebar_shade_color,0.14) 40px, alpha(@secondary_sidebar_shade_color,0) 56px), linear-gradient(to left, alpha(@secondary_sidebar_shade_color,0.4), alpha(@secondary_sidebar_shade_color,0.14) 7px, alpha(@secondary_sidebar_shade_color,0) 24px); } + +.content-pane .sidebar-pane flap > shadow.up, .content-pane .sidebar-pane leaflet > shadow.up, .content-pane .sidebar-pane navigation-view > shadow.up, .content-pane .sidebar-pane overlay-split-view > shadow.up, .sidebar-pane .content-pane flap > shadow.up, .sidebar-pane .content-pane leaflet > shadow.up, .sidebar-pane .content-pane navigation-view > shadow.up, .sidebar-pane .content-pane overlay-split-view > shadow.up { background-image: linear-gradient(to bottom, alpha(@secondary_sidebar_shade_color,0.7), alpha(@secondary_sidebar_shade_color,0.14) 40px, alpha(@secondary_sidebar_shade_color,0) 56px), linear-gradient(to bottom, alpha(@secondary_sidebar_shade_color,0.4), alpha(@secondary_sidebar_shade_color,0.14) 7px, alpha(@secondary_sidebar_shade_color,0) 24px); } + +.content-pane .sidebar-pane flap > shadow.down, .content-pane .sidebar-pane leaflet > shadow.down, .content-pane .sidebar-pane navigation-view > shadow.down, .content-pane .sidebar-pane overlay-split-view > shadow.down, .sidebar-pane .content-pane flap > shadow.down, .sidebar-pane .content-pane leaflet > shadow.down, .sidebar-pane .content-pane navigation-view > shadow.down, .sidebar-pane .content-pane overlay-split-view > shadow.down { background-image: linear-gradient(to top, alpha(@secondary_sidebar_shade_color,0.7), alpha(@secondary_sidebar_shade_color,0.14) 40px, alpha(@secondary_sidebar_shade_color,0) 56px), linear-gradient(to top, alpha(@secondary_sidebar_shade_color,0.4), alpha(@secondary_sidebar_shade_color,0.14) 7px, alpha(@secondary_sidebar_shade_color,0) 24px); } + +.content-pane .sidebar-pane banner > revealer > widget, .sidebar-pane .content-pane banner > revealer > widget { background-color: mix(@accent_bg_color,@secondary_sidebar_bg_color,0.7); color: @secondary_sidebar_fg_color; } + +.content-pane .sidebar-pane banner > revealer > widget:backdrop, .sidebar-pane .content-pane banner > revealer > widget:backdrop { background-color: mix(@accent_bg_color,@secondary_sidebar_backdrop_color,0.85); } + +.content-pane .sidebar-pane:dir(ltr), .content-pane .sidebar-pane:dir(ltr) banner > revealer > widget, .content-pane .sidebar-pane.end:dir(rtl), .content-pane .sidebar-pane.end:dir(rtl) banner > revealer > widget, .sidebar-pane .content-pane:dir(ltr), .sidebar-pane .content-pane:dir(ltr) banner > revealer > widget, .sidebar-pane .content-pane.end:dir(rtl), .sidebar-pane .content-pane.end:dir(rtl) banner > revealer > widget { box-shadow: inset -1px 0 alpha(currentColor,0.5); } + +.content-pane .sidebar-pane:dir(rtl), .content-pane .sidebar-pane:dir(rtl) banner > revealer > widget, .content-pane .sidebar-pane.end:dir(ltr), .content-pane .sidebar-pane.end:dir(ltr) banner > revealer > widget, .sidebar-pane .content-pane:dir(rtl), .sidebar-pane .content-pane:dir(rtl) banner > revealer > widget, .sidebar-pane .content-pane.end:dir(ltr), .sidebar-pane .content-pane.end:dir(ltr) banner > revealer > widget { box-shadow: inset 1px 0 alpha(currentColor,0.5); } + +.sidebar-pane .sidebar-pane { background-color: transparent; color: inherit; } + +stacksidebar row { padding: 10px 4px; } + +stacksidebar row > label { padding-left: 6px; padding-right: 6px; } + +stacksidebar row.needs-attention > label { background-size: 6px 6px, 0 0; } + +/********************** Navigation Sidebar * */ +.navigation-sidebar { padding: 6px 0; } + +.navigation-sidebar, .navigation-sidebar.view, window.print .navigation-sidebar.dialog-action-box, .navigation-sidebar.view:disabled { background-color: transparent; color: inherit; } + +.navigation-sidebar.background, .navigation-sidebar.background:disabled { background-color: @window_bg_color; color: @window_fg_color; } + +.navigation-sidebar row.activatable:hover { background-color: alpha(currentColor,0.07); } + +.navigation-sidebar row.activatable:active { background-color: alpha(currentColor,0.16); } + +.navigation-sidebar row.activatable.has-open-popup { background-color: alpha(currentColor,0.07); } + +.navigation-sidebar row.activatable:selected:hover { background-color: alpha(currentColor,0.13); } + +.navigation-sidebar row.activatable:selected:active { background-color: alpha(currentColor,0.19); } + +.navigation-sidebar row.activatable.has-open-popup:selected { background-color: alpha(currentColor,0.13); } + +.navigation-sidebar row:selected { background-color: alpha(currentColor,0.1); } + +.navigation-sidebar > separator { margin: 6px; } + +.navigation-sidebar > row { min-height: 36px; padding: 0 8px; border-radius: 6px; margin: 0 6px 2px; } + +.navigation-sidebar > row.activatable:hover, .navigation-sidebar > row.activatable:active, .navigation-sidebar > row.activatable.has-open-popup, .navigation-sidebar > row:selected { box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +@keyframes spin { to { transform: rotate(1turn); } } + +spinner { background: none; opacity: 0; -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); } + +spinner:checked { opacity: 1; animation: spin 1s linear infinite; } + +spinner:checked:disabled { opacity: 0.4; } + +spinbutton { padding: 0; border-spacing: 0; /* :not here just to bump specificity above that of the list button styling */ } + +spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) { margin: 0; border-radius: 0; box-shadow: none; border-style: solid; border-color: alpha(currentColor,0.5); } + +spinbutton:not(.vertical) { /* :not here just to bump specificity above that of the list button styling */ } + +spinbutton:not(.vertical) > text { min-width: 28px; padding: 6px; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton:not(.vertical) > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) { min-height: 16px; min-width: 22px; padding-bottom: 0; padding-top: 0; border-left-width: 1px; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl), spinbutton:not(.vertical) > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl) { border-left-width: 0; border-right-width: 1px; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, spinbutton:not(.vertical) > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child { border-radius: 0 6px 6px 0; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, spinbutton:not(.vertical) > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child { border-radius: 6px 0 0 6px; } + +spinbutton.vertical { /* :not here just to bump specificity above that of the list button styling */ } + +spinbutton.vertical > text { min-height: 30px; min-width: 30px; } + +spinbutton.vertical > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, spinbutton.vertical > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child { border-top-width: 1px; border-radius: 0 0 6px 6px; } + +spinbutton.vertical > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):first-child, spinbutton.vertical > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):first-child { border-bottom-width: 1px; border-radius: 6px 6px 0 0; } + +switch { border-radius: 14px; padding: 3px; background-color: alpha(currentColor,0.3); } + +switch:hover { background-color: alpha(currentColor,0.4); } + +switch:active { background-color: alpha(currentColor,0.5); } + +switch { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +switch:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: 1px; } + +switch:disabled { filter: opacity(0.4); } + +switch > slider { min-width: 20px; min-height: 20px; border-radius: 50%; background-color: mix(white,@view_bg_color,0.2); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); } + +switch > slider:disabled { box-shadow: 0 2px 4px transparent; } + +switch:hover > slider, switch:active > slider { background: white; } + +switch:checked { color: @accent_fg_color; background-color: @accent_bg_color; } + +switch:checked:hover { background-image: image(alpha(currentColor,0.1)); } + +switch:checked:active { background-image: image(rgba(0, 0, 0, 0.2)); } + +switch:checked > slider { background-color: white; } + +switch:checked > image { color: inherit; } + +.osd switch:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +.osd switch:checked { background-color: rgba(255, 255, 255, 0.6); color: rgba(0, 0, 0, 0.75); } + +tabbar .box { background-color: @headerbar_bg_color; color: @headerbar_fg_color; box-shadow: inset 0 -1px alpha(@headerbar_border_color,0.5); padding: 1px; padding-top: 0; } + +tabbar .box:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +tabbar .box:backdrop > scrolledwindow, tabbar .box:backdrop > .start-action, tabbar .box:backdrop > .end-action { filter: opacity(0.5); transition: filter 200ms ease-out; } + +tabbar tabbox { padding-bottom: 6px; padding-top: 6px; min-height: 34px; } + +tabbar tabbox > tabboxchild { border-radius: 6px; } + +tabbar tabbox > tabboxchild { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +tabbar tabbox > tabboxchild:focus-within:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +tabbar tabbox > separator { margin-top: 3px; margin-bottom: 3px; transition: opacity 150ms ease-in-out; } + +tabbar tabbox > separator.hidden { opacity: 0; } + +tabbar tabbox > revealer > indicator { min-width: 2px; border-radius: 2px; margin: 3px 6px; background: @accent_color; } + +tabbar tab { transition: background 150ms ease-in-out; } + +tabbar tab:hover, tabbar tab:active, tabbar tab:selected { box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +tabbar tab:selected { background-color: alpha(currentColor,0.1); } + +tabbar tab:selected:hover { background-color: alpha(currentColor,0.13); } + +tabbar tab:selected:active { background-color: alpha(currentColor,0.19); } + +tabbar tab:hover { background-color: alpha(currentColor,0.07); } + +tabbar tab:active { background-color: alpha(currentColor,0.16); } + +tabbar tabbox.single-tab tab, tabbar tabbox.single-tab tab:hover, tabbar tabbox.single-tab tab:active { background: none; box-shadow: none; } + +tabbar .start-action, tabbar .end-action { padding: 6px 5px; } + +tabbar .start-action:dir(ltr), tabbar .end-action:dir(rtl) { padding-right: 0; } + +tabbar .start-action:dir(rtl), tabbar .end-action:dir(ltr) { padding-left: 0; } + +toolbarview > .top-bar tabbar .box, toolbarview > .bottom-bar tabbar .box, tabbar.inline .box { background-color: transparent; color: inherit; box-shadow: none; padding-bottom: 0; } + +toolbarview > .top-bar tabbar .box:backdrop, toolbarview > .bottom-bar tabbar .box:backdrop, tabbar.inline .box:backdrop { background-color: transparent; transition: none; } + +toolbarview > .top-bar tabbar .box:backdrop > scrolledwindow, toolbarview > .bottom-bar tabbar .box:backdrop > scrolledwindow, tabbar.inline .box:backdrop > scrolledwindow, toolbarview > .top-bar tabbar .box:backdrop > .start-action, toolbarview > .bottom-bar tabbar .box:backdrop > .start-action, tabbar.inline .box:backdrop > .start-action, toolbarview > .top-bar tabbar .box:backdrop > .end-action, toolbarview > .bottom-bar tabbar .box:backdrop > .end-action, tabbar.inline .box:backdrop > .end-action { filter: none; transition: none; } + +toolbarview > .top-bar .collapse-spacing tabbar tabbox, toolbarview > .bottom-bar .collapse-spacing tabbar tabbox, toolbarview > .top-bar .collapse-spacing tabbar .start-action, toolbarview > .bottom-bar .collapse-spacing tabbar .start-action, toolbarview > .top-bar .collapse-spacing tabbar .end-action, toolbarview > .bottom-bar .collapse-spacing tabbar .end-action { padding-top: 3px; padding-bottom: 3px; } + +dnd tab { background-color: @headerbar_bg_color; background-image: image(alpha(currentColor,0.19)); color: @headerbar_fg_color; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.03), 0 1px 3px 1px rgba(0, 0, 0, 0.07), 0 2px 6px 2px rgba(0, 0, 0, 0.03); outline: 1px solid alpha(currentColor,0.5); outline-offset: -1px; margin: 25px; } + +tabbar tab, dnd tab { min-height: 26px; padding: 4px; border-radius: 6px; } + +tabbar tab button.image-button, dnd tab button.image-button { padding: 0; margin: 0; min-width: 24px; min-height: 24px; border-radius: 99px; } + +tabbar tab indicator, dnd tab indicator { min-height: 2px; border-radius: 2px; background: @accent_color; transform: translateY(4px); } + +tabgrid > tabgridchild .card { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +tabgrid > tabgridchild:focus:focus-visible .card { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: 0; } + +tabthumbnail { border-radius: 16px; transition: box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +tabthumbnail > box { margin: 6px; } + +tabthumbnail:drop(active) { box-shadow: inset 0 0 0 2px alpha(@accent_bg_color,0.4); background-color: alpha(@accent_bg_color,0.1); } + +tabthumbnail .needs-attention:dir(ltr) { transform: translate(8px, -8px); } + +tabthumbnail .needs-attention:dir(rtl) { transform: translate(-8px, -8px); } + +tabthumbnail .needs-attention > widget { background: @accent_color; min-width: 12px; min-height: 12px; border-radius: 8px; margin: 3px; box-shadow: 0 1px 2px alpha(@accent_color,0.4); } + +tabthumbnail .card { background: none; color: inherit; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5), 0 1px 3px 1px rgba(0, 0, 0, 0.07), 0 2px 6px 2px rgba(0, 0, 0, 0.03); } + +tabthumbnail .card picture { outline: 1px solid rgba(255, 255, 255, 0.3); outline-offset: -1px; border-radius: 12px; } + +tabthumbnail.pinned .card { background-color: @thumbnail_bg_color; color: @thumbnail_fg_color; outline: 1px solid rgba(255, 255, 255, 0.3); outline-offset: -1px; } + +tabthumbnail .icon-title-box { border-spacing: 6px; } + +tabthumbnail .tab-unpin-icon { margin: 6px; min-width: 24px; min-height: 24px; } + +tabthumbnail button.circular { margin: 6px; background-color: alpha(@thumbnail_bg_color,0.75); min-width: 24px; min-height: 24px; box-shadow: 0 0 0 1px currentColor; } + +tabthumbnail button.circular:hover { background-color: alpha(mix(@thumbnail_bg_color,currentColor,0.1),0.75); } + +tabthumbnail button.circular:active { background-color: alpha(mix(@thumbnail_bg_color,currentColor,0.2),0.75); } + +taboverview > .overview .new-tab-button { margin: 18px; } + +tabview:drop(active), tabbox:drop(active), tabgrid:drop(active) { box-shadow: none; } + +cursor-handle { all: unset; padding: 24px 20px; } + +cursor-handle > contents { min-width: 20px; min-height: 20px; border-radius: 50%; background-color: @accent_bg_color; } + +cursor-handle.top > contents { border-top-right-radius: 0; } + +cursor-handle.bottom > contents { border-top-left-radius: 0; transform: translateX(1px); } + +cursor-handle.insertion-cursor > contents { border-top-left-radius: 0; transform: translateX(1px) translateY(4px) rotate(45deg); } + +magnifier { background-color: @view_bg_color; } + +actionbar > revealer > box.osd button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):focus:focus-visible, searchbar > revealer > box.osd button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):focus:focus-visible, .osd.toolbar button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):focus:focus-visible, headerbar.osd button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +actionbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) { color: inherit; background-color: transparent; } + +actionbar > revealer > box switch, searchbar > revealer > box switch, .toolbar switch, headerbar switch { margin-top: 4px; margin-bottom: 4px; } + +.toolbar { padding: 6px; border-spacing: 6px; } + +.toolbar.osd { padding: 12px; border-radius: 12px; } + +toolbarview > .top-bar .collapse-spacing .toolbar, toolbarview > .bottom-bar .collapse-spacing .toolbar { padding-top: 3px; padding-bottom: 3px; } + +/**************** GtkSearchBar * */ +searchbar > revealer > box { padding: 6px 6px 7px 6px; background-color: @headerbar_bg_color; color: @headerbar_fg_color; box-shadow: inset 0 -1px alpha(@headerbar_border_color,0.5); } + +searchbar > revealer > box:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +searchbar > revealer > box:backdrop > * { filter: opacity(0.5); transition: filter 200ms ease-out; } + +searchbar > revealer > box .close { min-width: 18px; min-height: 18px; padding: 4px; border-radius: 50%; } + +searchbar > revealer > box .close:dir(ltr) { margin-left: 10px; margin-right: 4px; } + +searchbar > revealer > box .close:dir(rtl) { margin-left: 4px; margin-right: 10px; } + +toolbarview > .top-bar searchbar > revealer > box, toolbarview > .bottom-bar searchbar > revealer > box, searchbar.inline > revealer > box, window.appchooser searchbar > revealer > box, window.shortcuts searchbar > revealer > box { background-color: transparent; color: inherit; box-shadow: none; padding-bottom: 6px; } + +toolbarview > .top-bar searchbar > revealer > box:backdrop, toolbarview > .bottom-bar searchbar > revealer > box:backdrop, searchbar.inline > revealer > box:backdrop { background-color: transparent; transition: none; } + +toolbarview > .top-bar searchbar > revealer > box:backdrop > *, toolbarview > .bottom-bar searchbar > revealer > box:backdrop > *, searchbar.inline > revealer > box:backdrop > * { filter: none; transition: none; } + +toolbarview > .top-bar .collapse-spacing searchbar > revealer > box, toolbarview > .bottom-bar .collapse-spacing searchbar > revealer > box, window.appchooser.csd searchbar > revealer > box, window.shortcuts searchbar > revealer > box { padding-top: 3px; padding-bottom: 3px; } + +/**************** GtkActionBar * */ +actionbar > revealer > box { background-color: @headerbar_bg_color; color: @headerbar_fg_color; box-shadow: inset 0 1px alpha(@headerbar_border_color,0.5); padding: 7px 6px 6px 6px; } + +actionbar > revealer > box, actionbar > revealer > box > box.start, actionbar > revealer > box > box.end { border-spacing: 6px; } + +actionbar > revealer > box:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +actionbar > revealer > box:backdrop > * { filter: opacity(0.5); transition: filter 200ms ease-out; } + +toolbarview > .top-bar actionbar > revealer > box, toolbarview > .bottom-bar actionbar > revealer > box { background-color: transparent; color: inherit; box-shadow: none; padding-top: 6px; } + +toolbarview > .top-bar actionbar > revealer > box:backdrop, toolbarview > .bottom-bar actionbar > revealer > box:backdrop { background-color: transparent; transition: none; } + +toolbarview > .top-bar actionbar > revealer > box:backdrop > *, toolbarview > .bottom-bar actionbar > revealer > box:backdrop > * { filter: none; transition: none; } + +toolbarview > .top-bar .collapse-spacing actionbar > revealer > box, toolbarview > .bottom-bar .collapse-spacing actionbar > revealer > box { padding-top: 3px; padding-bottom: 3px; } + +/************* AdwBanner * */ +banner > revealer > widget { /* There are 2 more instances in _sidebars.css, keep in sync with that */ background-color: mix(@accent_bg_color,@window_bg_color,0.7); color: @window_fg_color; padding: 6px; } + +banner > revealer > widget:backdrop { background-color: mix(@accent_bg_color,@window_bg_color,0.85); transition: background-color 200ms ease-out; } + +banner > revealer > widget:backdrop > label, banner > revealer > widget:backdrop > button { filter: opacity(0.5); transition: filter 200ms ease-out; } + +/****************** AdwToolbarView * */ +toolbarview > .top-bar .collapse-spacing, toolbarview > .bottom-bar .collapse-spacing { padding-top: 3px; padding-bottom: 3px; } + +toolbarview > .top-bar.raised, toolbarview > .bottom-bar.raised { background-color: @headerbar_bg_color; color: @headerbar_fg_color; } + +toolbarview > .top-bar.raised:backdrop, toolbarview > .bottom-bar.raised:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +toolbarview > .top-bar:backdrop > windowhandle, toolbarview > .bottom-bar:backdrop > windowhandle { filter: opacity(0.5); transition: filter 200ms ease-out; } + +toolbarview > .top-bar.raised { box-shadow: 0 1px alpha(currentColor,0.5), 0 2px 4px alpha(@headerbar_shade_color,0.5); } + +toolbarview > .top-bar.raised.border { box-shadow: 0 1px alpha(currentColor,0.5); } + +toolbarview > .bottom-bar.raised { box-shadow: 0 -1px alpha(currentColor,0.5), 0 -2px 4px alpha(@headerbar_shade_color,0.5); } + +toolbarview > .bottom-bar.raised.border { box-shadow: 0 -1px alpha(currentColor,0.5); } + +toolbarview.undershoot-top scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(currentColor,0.5); background: linear-gradient(to bottom, alpha(@shade_color,0.75), transparent 4px); } + +toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(currentColor,0.5); background: linear-gradient(to top, alpha(@shade_color,0.75), transparent 4px); } + +window.devel toolbarview > .top-bar { background-image: cross-fade(5% -gtk-recolor(url("assets/devel-symbolic.svg")), image(transparent)); background-repeat: repeat-x; } + +window.devel dialog toolbarview > .top-bar { background-image: unset; background-repeat: unset; } + +tooltip { padding: 6px 10px; border-radius: 9px; box-shadow: none; } + +tooltip.background { background-color: rgba(0, 0, 0, 0.8); background-clip: padding-box; border: 1px solid rgba(255, 255, 255, 0.1); color: white; } + +tooltip > box { border-spacing: 6px; } + +.view, window.print .dialog-action-box, textview > text, dialog-host > dialog.view sheet, window.print dialog-host > dialog.dialog-action-box sheet, iconview { color: @view_fg_color; background-color: @view_bg_color; } + +.view:disabled, window.print .dialog-action-box:disabled, textview > text:disabled, dialog-host > dialog.view sheet:disabled, window.print dialog-host > dialog.dialog-action-box sheet:disabled, iconview:disabled { color: alpha(currentColor,0.5); background-color: mix(@window_bg_color,@view_bg_color,0.4); } + +.view:selected:focus, .view:selected, window.print .dialog-action-box:selected, textview > text:selected, dialog-host > dialog.view sheet:selected, window.print dialog-host > dialog.dialog-action-box sheet:selected, iconview:selected { background-color: alpha(@accent_bg_color,0.25); border-radius: 6px; } + +textview { caret-color: currentColor; } + +textview > text { background-color: transparent; } + +textview > border { background-color: mix(@window_bg_color,@view_bg_color,0.5); } + +textview:drop(active) { caret-color: @accent_bg_color; } + +rubberband { border: 1px solid @accent_color; background-color: alpha(@accent_color,0.2); } + +flowbox > flowboxchild, gridview > child { padding: 3px; border-radius: 6px; } + +flowbox > flowboxchild, gridview > child { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +flowbox > flowboxchild:focus:focus-visible, gridview > child:focus:focus-visible { outline-color: alpha(@accent_color,0.8); outline-width: 2px; outline-offset: -2px; } + +flowbox > flowboxchild:selected, gridview > child:selected { background-color: alpha(@accent_bg_color,0.25); box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +gridview > child.activatable:hover { background-color: alpha(currentColor,0.04); } + +gridview > child.activatable:active { background-color: alpha(currentColor,0.08); } + +gridview > child.activatable:selected:hover { background-color: alpha(@accent_bg_color,0.32); } + +gridview > child.activatable:selected:active { background-color: alpha(@accent_bg_color,0.39); } + +gridview > child.activatable:hover, gridview > child.activatable:active { box-shadow: inset 0 0 0 1px alpha(currentColor,0.5); } + +viewswitcher { border-spacing: 3px; } + +viewswitcher.narrow { margin-top: -3px; margin-bottom: -3px; min-height: 6px; } + +viewswitcher button.toggle { padding: 0; } + +viewswitcher button.toggle > stack > box.narrow { font-size: 0.75rem; padding-top: 4px; } + +viewswitcher button.toggle > stack > box.narrow > label { min-height: 18px; padding-left: 3px; padding-right: 3px; padding-bottom: 2px; } + +viewswitcher button.toggle > stack > box.wide { padding: 2px 12px; border-spacing: 6px; } + +/********************** AdwViewSwitcherBar * */ +viewswitcherbar actionbar > revealer > box { padding-left: 0; padding-right: 0; padding-top: 7px; } + +toolbarview > .top-bar .collapse-spacing viewswitcherbar actionbar > revealer > box, toolbarview > .bottom-bar .collapse-spacing viewswitcherbar actionbar > revealer > box { padding-top: 6px; } + +/************************ AdwViewSwitcherTitle * */ +viewswitchertitle { margin-top: -6px; margin-bottom: -6px; } + +viewswitchertitle viewswitcher { margin-left: 12px; margin-right: 12px; } + +viewswitchertitle viewswitcher.narrow { margin-top: 3px; margin-bottom: 3px; } + +viewswitchertitle viewswitcher.wide { margin-top: 6px; margin-bottom: 6px; } + +viewswitchertitle windowtitle { margin-top: 0; margin-bottom: 0; } + +/******************* AdwIndicatorBin * */ +indicatorbin > indicator, indicatorbin > mask { min-width: 6px; min-height: 6px; border-radius: 100px; } + +indicatorbin > indicator { margin: 1px; background: alpha(currentColor,0.4); } + +indicatorbin > mask { padding: 1px; background: black; } + +indicatorbin.needs-attention > indicator { background: @accent_color; } + +indicatorbin.badge > indicator, indicatorbin.badge > mask { min-height: 13px; } + +indicatorbin.badge > indicator > label { font-size: 0.6rem; font-weight: bold; padding-left: 4px; padding-right: 4px; color: white; } + +indicatorbin.badge.needs-attention > indicator { background: @accent_bg_color; } + +indicatorbin.badge.needs-attention > indicator > label { color: @accent_fg_color; } + +window.csd { box-shadow: 0 1px 3px 3px transparent, 0 2px 8px 2px rgba(0, 0, 0, 0.13), 0 3px 20px 10px rgba(0, 0, 0, 0.09), 0 6px 32px 16px rgba(0, 0, 0, 0.04), 0 0 0 1px rgba(0, 0, 0, 0.8); margin: 0px; border-radius: 12px; outline: 1px solid rgba(255, 255, 255, 0.3); outline-offset: -1px; } + +window.csd:backdrop { box-shadow: 0 1px 3px 3px rgba(0, 0, 0, 0.09), 0 2px 14px 5px rgba(0, 0, 0, 0.05), 0 4px 28px 12px rgba(0, 0, 0, 0.03), 0 6px 32px 16px transparent, 0 0 0 1px rgba(0, 0, 0, 0.8); transition: box-shadow 200ms ease-out; } + +window.csd.dialog.message, window.csd.messagedialog { box-shadow: 0 2px 8px 2px rgba(0, 0, 0, 0.07), 0 3px 20px 10px rgba(0, 0, 0, 0.05), 0 6px 32px 16px rgba(0, 0, 0, 0.02), 0 0 0 1px rgba(0, 0, 0, 0.8); } + +window.csd.tiled, window.csd.tiled-top, window.csd.tiled-left, window.csd.tiled-right, window.csd.tiled-bottom { border-radius: 0; outline: none; box-shadow: 0 0 0 1px alpha(currentColor,0.5), 0 0 0 20px transparent; } + +window.csd.tiled:backdrop, window.csd.tiled-top:backdrop, window.csd.tiled-left:backdrop, window.csd.tiled-right:backdrop, window.csd.tiled-bottom:backdrop { box-shadow: 0 0 0 1px alpha(currentColor,0.5), 0 0 0 20px transparent; } + +window.csd.maximized, window.csd.fullscreen { border-radius: 0; outline: none; box-shadow: none; transition: none; } + +window.solid-csd { margin: 0; padding: 5px; border-radius: 0; box-shadow: inset 0 0 0 5px alpha(currentColor,0.5), inset 0 0 0 4px @headerbar_bg_color, inset 0 0 0 1px alpha(currentColor,0.5); } + +window.solid-csd:backdrop { box-shadow: inset 0 0 0 5px alpha(currentColor,0.5), inset 0 0 0 4px @headerbar_backdrop_color, inset 0 0 0 1px alpha(currentColor,0.5); } + +window.ssd { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.8); } + +/* Public colors from Default */ +@define-color theme_bg_color @window_bg_color; +@define-color theme_fg_color @window_fg_color; +@define-color theme_base_color @view_bg_color; +@define-color theme_text_color @view_fg_color; +@define-color theme_selected_bg_color @accent_bg_color; +@define-color theme_selected_fg_color @accent_fg_color; +@define-color insensitive_bg_color mix(@window_bg_color,@view_bg_color,0.4); +@define-color insensitive_fg_color alpha(@window_fg_color,0.5); +@define-color insensitive_base_color @view_bg_color; +@define-color borders alpha(currentColor,0.5); +@define-color theme_unfocused_bg_color @window_bg_color; +@define-color theme_unfocused_fg_color @window_fg_color; +@define-color theme_unfocused_base_color @view_bg_color; +@define-color theme_unfocused_text_color @view_fg_color; +@define-color theme_unfocused_selected_bg_color @accent_bg_color; +@define-color theme_unfocused_selected_fg_color @accent_fg_color; +@define-color unfocused_insensitive_color @insensitive_bg_color; +@define-color unfocused_borders alpha(currentColor,0.5); diff --git a/libadwaita/libadwaita/stylesheet/base.css b/libadwaita/libadwaita/stylesheet/base.css new file mode 100644 index 0000000..35505b8 --- /dev/null +++ b/libadwaita/libadwaita/stylesheet/base.css @@ -0,0 +1,2505 @@ +@define-color blue_1 #99c1f1; +@define-color blue_2 #62a0ea; +@define-color blue_3 #3584e4; +@define-color blue_4 #1c71d8; +@define-color blue_5 #1a5fb4; +@define-color green_1 #8ff0a4; +@define-color green_2 #57e389; +@define-color green_3 #33d17a; +@define-color green_4 #2ec27e; +@define-color green_5 #26a269; +@define-color yellow_1 #f9f06b; +@define-color yellow_2 #f8e45c; +@define-color yellow_3 #f6d32d; +@define-color yellow_4 #f5c211; +@define-color yellow_5 #e5a50a; +@define-color orange_1 #ffbe6f; +@define-color orange_2 #ffa348; +@define-color orange_3 #ff7800; +@define-color orange_4 #e66100; +@define-color orange_5 #c64600; +@define-color red_1 #f66151; +@define-color red_2 #ed333b; +@define-color red_3 #e01b24; +@define-color red_4 #c01c28; +@define-color red_5 #a51d2d; +@define-color purple_1 #dc8add; +@define-color purple_2 #c061cb; +@define-color purple_3 #9141ac; +@define-color purple_4 #813d9c; +@define-color purple_5 #613583; +@define-color brown_1 #cdab8f; +@define-color brown_2 #b5835a; +@define-color brown_3 #986a44; +@define-color brown_4 #865e3c; +@define-color brown_5 #63452c; +@define-color light_1 #ffffff; +@define-color light_2 #f6f5f4; +@define-color light_3 #deddda; +@define-color light_4 #c0bfbc; +@define-color light_5 #9a9996; +@define-color dark_1 #77767b; +@define-color dark_2 #5e5c64; +@define-color dark_3 #3d3846; +@define-color dark_4 #241f31; +@define-color dark_5 #000000; +.background { color: @window_fg_color; background-color: @window_bg_color; } + +dnd { color: @window_fg_color; } + +.normal-icons { -gtk-icon-size: 16px; } + +.large-icons { -gtk-icon-size: 32px; } + +.osd popover > arrow, .osd popover > contents, popover.touch-selection > arrow, popover.touch-selection > contents, popover.magnifier > arrow, popover.magnifier > contents, toast, .app-notification, dialog-host > dialog.osd sheet, .osd { color: rgba(255, 255, 255, 0.9); border: none; background-color: rgba(0, 0, 0, 0.7); background-clip: padding-box; } + +/* Text selection */ +selection { background-color: alpha(@view_fg_color,0.1); color: transparent; } + +selection:focus-within { background-color: alpha(@accent_bg_color,0.3); } + +:not(window):drop(active):focus, :not(window):drop(active) { border-color: @accent_bg_color; box-shadow: inset 0 0 0 1px @accent_bg_color; caret-color: @accent_bg_color; } + +.navigation-sidebar :not(window):drop(active):focus, .navigation-sidebar :not(window):drop(active), placessidebar :not(window):drop(active):focus, placessidebar :not(window):drop(active), stackswitcher :not(window):drop(active):focus, stackswitcher :not(window):drop(active), expander-widget :not(window):drop(active):focus, expander-widget :not(window):drop(active) { box-shadow: none; } + +/* Outline for low res icons */ +.lowres-icon { -gtk-icon-shadow: 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); } + +/* Drop shadow for large icons */ +.icon-dropshadow { -gtk-icon-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 -1px rgba(0, 0, 0, 0.05), 1px 0 rgba(0, 0, 0, 0.1), 0 1px rgba(0, 0, 0, 0.3), -1px 0 rgba(0, 0, 0, 0.1); } + +@keyframes needs_attention { from { background-image: radial-gradient(farthest-side, @accent_color 0%, transparent 0%); } + to { background-image: radial-gradient(farthest-side, @accent_color 95%, transparent); } } + +stacksidebar row.needs-attention > label, stackswitcher > button.needs-attention > label, stackswitcher > button.needs-attention > image { animation: needs_attention 150ms ease-in; background-image: radial-gradient(farthest-side, @accent_color 96%, transparent); background-size: 6px 6px; background-repeat: no-repeat; background-position: right 3px; } + +stacksidebar row.needs-attention > label:dir(rtl), stackswitcher > button.needs-attention > label:dir(rtl), stackswitcher > button.needs-attention > image:dir(rtl) { background-position: left 3px; } + +avatar { border-radius: 9999px; font-weight: bold; } + +avatar.color1 { background-image: linear-gradient(#83b6ec, #337fdc); color: #cfe1f5; } + +avatar.color2 { background-image: linear-gradient(#7ad9f1, #0f9ac8); color: #caeaf2; } + +avatar.color3 { background-image: linear-gradient(#8de6b1, #29ae74); color: #cef8d8; } + +avatar.color4 { background-image: linear-gradient(#b5e98a, #6ab85b); color: #e6f9d7; } + +avatar.color5 { background-image: linear-gradient(#f8e359, #d29d09); color: #f9f4e1; } + +avatar.color6 { background-image: linear-gradient(#ffcb62, #d68400); color: #ffead1; } + +avatar.color7 { background-image: linear-gradient(#ffa95a, #ed5b00); color: #ffe5c5; } + +avatar.color8 { background-image: linear-gradient(#f78773, #e62d42); color: #f8d2ce; } + +avatar.color9 { background-image: linear-gradient(#e973ab, #e33b6a); color: #fac7de; } + +avatar.color10 { background-image: linear-gradient(#cb78d4, #9945b5); color: #e7c2e8; } + +avatar.color11 { background-image: linear-gradient(#9e91e8, #7a59ca); color: #d5d2f5; } + +avatar.color12 { background-image: linear-gradient(#e3cf9c, #b08952); color: #f2eade; } + +avatar.color13 { background-image: linear-gradient(#be916d, #785336); color: #e5d6ca; } + +avatar.color14 { background-image: linear-gradient(#c0bfbc, #6e6d71); color: #d8d7d3; } + +avatar.contrasted { color: white; } + +avatar.image { background: none; } + +bottom-sheet > dimming { background-color: alpha(@shade_color,2); } + +bottom-sheet > sheet { border-top-left-radius: 12px; border-top-right-radius: 12px; box-shadow: 0 2px 8px 2px rgba(0, 0, 0, 0.07), 0 3px 20px 10px rgba(0, 0, 0, 0.05), 0 6px 32px 16px rgba(0, 0, 0, 0.02), 0 0 0 1px rgba(0, 0, 0, 0.05); } + +bottom-sheet > sheet > drag-handle { background-color: alpha(currentColor,0.25); min-width: 60px; min-height: 4px; margin: 6px; border-radius: 99px; } + +bottom-sheet > sheet > outline { border-top-left-radius: 12px; border-top-right-radius: 12px; box-shadow: inset 1px 0 rgba(255, 255, 255, 0.07), inset -1px 0 rgba(255, 255, 255, 0.07), inset 0 1px rgba(255, 255, 255, 0.07); } + +bottom-sheet > sheet > outline.flush-left { box-shadow: inset -1px 0 rgba(255, 255, 255, 0.07), inset 0 1px rgba(255, 255, 255, 0.07); } + +bottom-sheet > sheet > outline.flush-right { box-shadow: inset 1px 0 rgba(255, 255, 255, 0.07), inset 0 1px rgba(255, 255, 255, 0.07); } + +bottom-sheet > sheet > outline.flush-left.flush-right { box-shadow: inset 0 1px rgba(255, 255, 255, 0.07); } + +notebook > header > tabs > arrow, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay, button { min-height: 24px; min-width: 16px; padding: 5px 10px; border-radius: 6px; font-weight: bold; } + +notebook > header > tabs > arrow, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay, button { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +notebook > header > tabs > arrow:focus:focus-visible, row.spin spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:focus:focus-visible, button:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +.osd notebook > header > tabs > arrow:focus:focus-visible, .osd row.spin spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin .osd spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, .osd row.spin spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin .osd spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd colorswatch#add-color-button > overlay:focus:focus-visible, .osd button:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box popover button.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay, button { background-color: alpha(currentColor,0.1); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, actionbar > revealer > box popover button.arrow-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:hover, row.spin spinbutton > button.image-button.up:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:hover, button:hover { background-color: alpha(currentColor,0.15); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, actionbar > revealer > box popover button.keyboard-activating.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.keyboard-activating.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.keyboard-activating.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.keyboard-activating.arrow-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.keyboard-activating.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.keyboard-activating.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.keyboard-activating.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.keyboard-activating.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.keyboard-activating.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.keyboard-activating.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.keyboard-activating.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.keyboard-activating.image-text-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, actionbar > revealer > box popover button.arrow-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow.keyboard-activating, row.spin spinbutton > button.keyboard-activating.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.keyboard-activating.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.keyboard-activating.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.keyboard-activating.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.keyboard-activating.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.keyboard-activating.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.keyboard-activating, notebook > header > tabs > arrow:active, row.spin spinbutton > button.image-button.up:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:active, button.keyboard-activating, button:active { background-color: alpha(currentColor,0.3); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, actionbar > revealer > box popover button.arrow-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked, row.spin spinbutton > button.image-button.up:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:checked, button:checked { background-color: alpha(currentColor,0.3); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, actionbar > revealer > box popover button.arrow-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked:hover, row.spin spinbutton > button.image-button.up:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.down:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:checked:hover, button:checked:hover { background-color: alpha(currentColor,0.35); } + +actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, actionbar > revealer > box popover button.arrow-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, searchbar > revealer > box popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, .toolbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, headerbar popover menubutton.image-button:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, actionbar > revealer > box popover button.arrow-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.arrow-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.arrow-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.arrow-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box popover button.image-text-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box popover button.image-text-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar popover button.image-text-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar popover button.image-text-button:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.raised > button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.raised > button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.raised > button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.raised > button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .linked button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .linked button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .linked button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .linked button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow.keyboard-activating:checked, row.spin spinbutton > button.image-button.up.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.down.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.keyboard-activating:checked, notebook > header > tabs > arrow:checked:active, row.spin spinbutton > button.image-button.up:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.down:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:checked:active, button.keyboard-activating:checked, button:checked:active { background-color: alpha(currentColor,0.4); } + +notebook > header > tabs > arrow:disabled, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:disabled, button:disabled { filter: opacity(0.5); } + +notebook > header > tabs > arrow:disabled label, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child label, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) label, row.spin spinbutton > button.image-button.up:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child label, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) label, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child label, row.spin spinbutton > button.image-button.down:disabled:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child label, colorswatch#add-color-button > overlay:disabled label, button:disabled label { filter: none; } + +notebook > header > tabs > arrow.image-button, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.image-button, button.image-button { min-width: 24px; padding-left: 5px; padding-right: 5px; } + +notebook > header > tabs > arrow.text-button, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.text-button, button.text-button { padding-left: 17px; padding-right: 17px; } + +notebook > header > tabs > arrow.text-button.image-button, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.text-button.image-button, notebook > header > tabs > arrow.image-text-button, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.image-text-button, button.text-button.image-button, button.image-text-button { padding-left: 9px; padding-right: 9px; } + +notebook > header > tabs > arrow.text-button.image-button > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box, colorswatch#add-color-button > overlay.text-button.image-button > box, notebook > header > tabs > arrow.text-button.image-button > box > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > box, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > box, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > box, colorswatch#add-color-button > overlay.text-button.image-button > box > box, notebook > header > tabs > arrow.image-text-button > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box, colorswatch#add-color-button > overlay.image-text-button > box, notebook > header > tabs > arrow.image-text-button > box > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > box, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > box, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > box, colorswatch#add-color-button > overlay.image-text-button > box > box, button.text-button.image-button > box, button.text-button.image-button > box > box, button.image-text-button > box, button.image-text-button > box > box { border-spacing: 4px; } + +notebook > header > tabs > arrow.text-button.image-button > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > label, colorswatch#add-color-button > overlay.text-button.image-button > box > label, notebook > header > tabs > arrow.text-button.image-button > box > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > box > label, row.spin spinbutton > button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > box > label, row.spin spinbutton > button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > box > label, colorswatch#add-color-button > overlay.text-button.image-button > box > box > label, notebook > header > tabs > arrow.image-text-button > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > label, colorswatch#add-color-button > overlay.image-text-button > box > label, notebook > header > tabs > arrow.image-text-button > box > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box > box > label, row.spin spinbutton > button.image-text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box > box > label, row.spin spinbutton > button.image-text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box > box > label, colorswatch#add-color-button > overlay.image-text-button > box > box > label, button.text-button.image-button > box > label, button.text-button.image-button > box > box > label, button.image-text-button > box > label, button.image-text-button > box > box > label { padding-left: 2px; padding-right: 2px; } + +notebook > header > tabs > arrow.arrow-button, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay.arrow-button, button.arrow-button { padding-left: 9px; padding-right: 9px; } + +notebook > header > tabs > arrow.arrow-button > box, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr) > box, row.spin spinbutton > button.arrow-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child > box, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box, row.spin spinbutton > button.arrow-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box, colorswatch#add-color-button > overlay.arrow-button > box, button.arrow-button > box { border-spacing: 4px; } + +notebook > header > tabs > arrow.arrow-button.text-button > box, row.spin spinbutton > button.arrow-button.text-button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child > box, row.spin spinbutton > button.arrow-button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > box, row.spin spinbutton > button.arrow-button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child > box, row.spin spinbutton > button.arrow-button.text-button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child > box, colorswatch#add-color-button > overlay.arrow-button.text-button > box, button.arrow-button.text-button > box { border-spacing: 4px; } + +dropdown:drop(active) button.combo, combobox:drop(active) button.combo, searchbar > revealer > box .close:drop(active), actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), actionbar > revealer > box button.arrow-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), window.dialog.message.csd .dialog-action-area > button:drop(active), popover.menu box.circular-buttons button.circular.image-button.model:drop(active), popover.menu box.inline-buttons button.image-button.model:drop(active), filechooser #pathbarbox > stack > box > button:drop(active), filechooser #pathbarbox > stack > box > box > button:drop(active), filechooser #pathbarbox > stack > box > menubutton > button:drop(active), button.sidebar-button:drop(active), button.emoji-section.image-button:drop(active):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:drop(active), calendar > header > button:drop(active), actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:drop(active), actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:drop(active), searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:drop(active), .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:drop(active), headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:drop(active), splitbutton.flat > button:drop(active), splitbutton.flat > menubutton > button:drop(active), menubutton.flat > button:drop(active), button.flat:drop(active), menubutton.osd > button:drop(active), button.osd:drop(active), notebook > header > tabs > arrow:drop(active), row.spin spinbutton > button.image-button.up:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr), row.spin spinbutton > button.image-button.up:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:drop(active):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, colorswatch#add-color-button > overlay:drop(active), button:drop(active) { color: @accent_bg_color; box-shadow: inset 0 0 0 2px @accent_bg_color; } + +menubutton.osd > button, button.osd { min-width: 32px; min-height: 32px; color: rgba(255, 255, 255, 0.9); background-color: rgba(0, 0, 0, 0.65); } + +menubutton.osd > button, button.osd { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +menubutton.osd > button:focus:focus-visible, button.osd:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: 1px; } + +menubutton.osd > button:hover, button.osd:hover { color: white; background-color: alpha(mix(black,currentColor,0.15),0.65); } + +menubutton.osd > button.keyboard-activating, menubutton.osd > button:active, button.osd.keyboard-activating, button.osd:active { color: white; background-color: alpha(mix(black,currentColor,0.25),0.65); } + +menubutton.osd > button:checked, button.osd:checked { background-color: alpha(mix(black,currentColor,0.2),0.65); } + +menubutton.osd > button:checked:hover, button.osd:checked:hover { background-color: alpha(mix(black,currentColor,0.25),0.65); } + +menubutton.osd > button.keyboard-activating:checked, menubutton.osd > button:checked:active, button.osd.keyboard-activating:checked, button.osd:checked:active { background-color: alpha(mix(black,currentColor,0.35),0.65); } + +menubutton.osd > button:focus:focus-visible, .osd button.osd:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +actionbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button, splitbutton.suggested-action > menubutton > button, splitbutton.destructive-action > button, splitbutton.destructive-action > menubutton > button, splitbutton.opaque > button, splitbutton.opaque > menubutton > button, menubutton.suggested-action > button, menubutton.destructive-action > button, menubutton.opaque > button, button.suggested-action, button.destructive-action, button.opaque { box-shadow: none; } + +actionbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button, splitbutton.suggested-action > menubutton > button, splitbutton.destructive-action > button, splitbutton.destructive-action > menubutton > button, splitbutton.opaque > button, splitbutton.opaque > menubutton > button, menubutton.suggested-action > button, menubutton.destructive-action > button, menubutton.opaque > button, button.suggested-action, button.destructive-action, button.opaque { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +actionbar > revealer > box menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:focus:focus-visible, splitbutton.suggested-action > menubutton > button:focus:focus-visible, splitbutton.destructive-action > button:focus:focus-visible, splitbutton.destructive-action > menubutton > button:focus:focus-visible, splitbutton.opaque > button:focus:focus-visible, splitbutton.opaque > menubutton > button:focus:focus-visible, menubutton.suggested-action > button:focus:focus-visible, menubutton.destructive-action > button:focus:focus-visible, menubutton.opaque > button:focus:focus-visible, button.suggested-action:focus:focus-visible, button.destructive-action:focus:focus-visible, button.opaque:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: 1px; } + +.osd actionbar > revealer > box menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd menubutton.suggested-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd actionbar > revealer > box menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd menubutton.destructive-action > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd actionbar > revealer > box menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd menubutton.opaque > button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd splitbutton.suggested-action > button:focus:focus-visible, .osd splitbutton.suggested-action > menubutton > button:focus:focus-visible, .osd splitbutton.destructive-action > button:focus:focus-visible, .osd splitbutton.destructive-action > menubutton > button:focus:focus-visible, .osd splitbutton.opaque > button:focus:focus-visible, .osd splitbutton.opaque > menubutton > button:focus:focus-visible, .osd menubutton.suggested-action > button:focus:focus-visible, .osd menubutton.destructive-action > button:focus:focus-visible, .osd menubutton.opaque > button:focus:focus-visible, .osd button.suggested-action:focus:focus-visible, .osd button.destructive-action:focus:focus-visible, .osd button.opaque:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +actionbar > revealer > box menubutton.suggested-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:hover, splitbutton.suggested-action > menubutton > button:hover, splitbutton.destructive-action > button:hover, splitbutton.destructive-action > menubutton > button:hover, splitbutton.opaque > button:hover, splitbutton.opaque > menubutton > button:hover, menubutton.suggested-action > button:hover, menubutton.destructive-action > button:hover, menubutton.opaque > button:hover, button.suggested-action:hover, button.destructive-action:hover, button.opaque:hover { background-image: image(alpha(currentColor,0.1)); } + +actionbar > revealer > box menubutton.suggested-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button.keyboard-activating:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button.keyboard-activating, splitbutton.suggested-action > menubutton > button.keyboard-activating, splitbutton.destructive-action > button.keyboard-activating, splitbutton.destructive-action > menubutton > button.keyboard-activating, splitbutton.opaque > button.keyboard-activating, splitbutton.opaque > menubutton > button.keyboard-activating, menubutton.suggested-action > button.keyboard-activating, menubutton.destructive-action > button.keyboard-activating, menubutton.opaque > button.keyboard-activating, button.keyboard-activating.suggested-action, button.keyboard-activating.destructive-action, button.keyboard-activating.opaque, actionbar > revealer > box menubutton.suggested-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:active, splitbutton.suggested-action > menubutton > button:active, splitbutton.destructive-action > button:active, splitbutton.destructive-action > menubutton > button:active, splitbutton.opaque > button:active, splitbutton.opaque > menubutton > button:active, menubutton.suggested-action > button:active, menubutton.destructive-action > button:active, menubutton.opaque > button:active, button.suggested-action:active, button.destructive-action:active, button.opaque:active { background-image: image(rgba(0, 0, 0, 0.2)); } + +actionbar > revealer > box menubutton.suggested-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:checked, splitbutton.suggested-action > menubutton > button:checked, splitbutton.destructive-action > button:checked, splitbutton.destructive-action > menubutton > button:checked, splitbutton.opaque > button:checked, splitbutton.opaque > menubutton > button:checked, menubutton.suggested-action > button:checked, menubutton.destructive-action > button:checked, menubutton.opaque > button:checked, button.suggested-action:checked, button.destructive-action:checked, button.opaque:checked { background-image: image(rgba(0, 0, 0, 0.15)); } + +actionbar > revealer > box menubutton.suggested-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:checked:hover, splitbutton.suggested-action > menubutton > button:checked:hover, splitbutton.destructive-action > button:checked:hover, splitbutton.destructive-action > menubutton > button:checked:hover, splitbutton.opaque > button:checked:hover, splitbutton.opaque > menubutton > button:checked:hover, menubutton.suggested-action > button:checked:hover, menubutton.destructive-action > button:checked:hover, menubutton.opaque > button:checked:hover, button.suggested-action:checked:hover, button.destructive-action:checked:hover, button.opaque:checked:hover { background-image: image(rgba(0, 0, 0, 0.05)); } + +actionbar > revealer > box menubutton.suggested-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button.keyboard-activating:checked, splitbutton.suggested-action > menubutton > button.keyboard-activating:checked, splitbutton.destructive-action > button.keyboard-activating:checked, splitbutton.destructive-action > menubutton > button.keyboard-activating:checked, splitbutton.opaque > button.keyboard-activating:checked, splitbutton.opaque > menubutton > button.keyboard-activating:checked, menubutton.suggested-action > button.keyboard-activating:checked, menubutton.destructive-action > button.keyboard-activating:checked, menubutton.opaque > button.keyboard-activating:checked, button.suggested-action.keyboard-activating:checked, button.destructive-action.keyboard-activating:checked, button.opaque.keyboard-activating:checked, actionbar > revealer > box menubutton.suggested-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.suggested-action > button:checked:active, splitbutton.suggested-action > menubutton > button:checked:active, splitbutton.destructive-action > button:checked:active, splitbutton.destructive-action > menubutton > button:checked:active, splitbutton.opaque > button:checked:active, splitbutton.opaque > menubutton > button:checked:active, menubutton.suggested-action > button:checked:active, menubutton.destructive-action > button:checked:active, menubutton.opaque > button:checked:active, button.suggested-action:checked:active, button.destructive-action:checked:active, button.opaque:checked:active { background-image: image(rgba(0, 0, 0, 0.3)); } + +button.opaque { background-color: mix(@window_bg_color,@window_fg_color,0.15); color: @window_fg_color; } + +button.destructive-action { color: @destructive_fg_color; } + +button.destructive-action, button.destructive-action:checked { background-color: @destructive_bg_color; } + +button.suggested-action { color: @accent_fg_color; } + +button.suggested-action, button.suggested-action:checked { background-color: @accent_bg_color; } + +searchbar > revealer > box .close, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow, window.dialog.message.csd .dialog-action-area > button, popover.menu box.circular-buttons button.circular.image-button.model, popover.menu box.inline-buttons button.image-button.model, filechooser #pathbarbox > stack > box > button, filechooser #pathbarbox > stack > box > box > button, filechooser #pathbarbox > stack > box > menubutton > button, button.sidebar-button, button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close, calendar > header > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, splitbutton.flat > button, splitbutton.flat > menubutton > button, menubutton.flat > button, button.flat { background: transparent; box-shadow: none; } + +searchbar > revealer > box .close, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow, window.dialog.message.csd .dialog-action-area > button, popover.menu box.circular-buttons button.circular.image-button.model, popover.menu box.inline-buttons button.image-button.model, filechooser #pathbarbox > stack > box > button, filechooser #pathbarbox > stack > box > box > button, filechooser #pathbarbox > stack > box > menubutton > button, button.sidebar-button, button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close, calendar > header > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, splitbutton.flat > button, splitbutton.flat > menubutton > button, menubutton.flat > button, button.flat { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +searchbar > revealer > box .close:focus:focus-visible, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, actionbar > revealer > box button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:focus:focus-visible, window.dialog.message.csd .dialog-action-area > button:focus:focus-visible, popover.menu box.circular-buttons button.circular.image-button.model:focus:focus-visible, popover.menu box.inline-buttons button.image-button.model:focus:focus-visible, filechooser #pathbarbox > stack > box > button:focus:focus-visible, filechooser #pathbarbox > stack > box > box > button:focus:focus-visible, filechooser #pathbarbox > stack > box > menubutton > button:focus:focus-visible, button.sidebar-button:focus:focus-visible, button.emoji-section.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:focus:focus-visible, calendar > header > button:focus:focus-visible, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, splitbutton.flat > button:focus:focus-visible, splitbutton.flat > menubutton > button:focus:focus-visible, menubutton.flat > button:focus:focus-visible, button.flat:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +.osd searchbar > revealer > box .close:focus:focus-visible, searchbar > revealer > box .osd .close:focus:focus-visible, .osd actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, actionbar > revealer > box .osd menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, searchbar > revealer > box .osd menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .toolbar .osd menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, headerbar .osd menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd actionbar > revealer > box button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd button.arrow-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd actionbar > revealer > box button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd button.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd actionbar > revealer > box button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd searchbar > revealer > box button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd .toolbar button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box .osd button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box .osd button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar .osd button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd headerbar button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar .osd button.image-text-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd spinbutton > button.image-button.up:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd spinbutton > button.image-button.down:focus:focus-visible:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd notebook > header > tabs > arrow:focus:focus-visible, .osd window.dialog.message.csd .dialog-action-area > button:focus:focus-visible, window.dialog.message.csd .osd .dialog-action-area > button:focus:focus-visible, .osd popover.menu box.circular-buttons button.circular.image-button.model:focus:focus-visible, popover.menu box.circular-buttons .osd button.circular.image-button.model:focus:focus-visible, .osd popover.menu box.inline-buttons button.image-button.model:focus:focus-visible, popover.menu box.inline-buttons .osd button.image-button.model:focus:focus-visible, .osd filechooser #pathbarbox > stack > box > button:focus:focus-visible, filechooser .osd #pathbarbox > stack > box > button:focus:focus-visible, .osd filechooser #pathbarbox > stack > box > box > button:focus:focus-visible, filechooser .osd #pathbarbox > stack > box > box > button:focus:focus-visible, .osd filechooser #pathbarbox > stack > box > menubutton > button:focus:focus-visible, filechooser .osd #pathbarbox > stack > box > menubutton > button:focus:focus-visible, .osd button.sidebar-button:focus:focus-visible, .osd button.emoji-section.image-button:focus:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .osd infobar .close:focus:focus-visible, infobar .osd .close:focus:focus-visible, .osd calendar > header > button:focus:focus-visible, .osd actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, actionbar > revealer > box .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, searchbar > revealer > box .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .toolbar .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, headerbar .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:focus:focus-visible, .osd actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .osd searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .osd .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, actionbar > revealer > box .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, searchbar > revealer > box .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .toolbar .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .osd headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, headerbar .osd splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:focus:focus-visible, .osd splitbutton.flat > button:focus:focus-visible, .osd splitbutton.flat > menubutton > button:focus:focus-visible, .osd menubutton.flat > button:focus:focus-visible, .osd button.flat:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +searchbar > revealer > box .close:hover, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, actionbar > revealer > box button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:hover, window.dialog.message.csd .dialog-action-area > button:hover, popover.menu box.circular-buttons button.circular.image-button.model:hover, popover.menu box.inline-buttons button.image-button.model:hover, filechooser #pathbarbox > stack > box > button:hover, filechooser #pathbarbox > stack > box > box > button:hover, filechooser #pathbarbox > stack > box > menubutton > button:hover, button.sidebar-button:hover, button.emoji-section.image-button:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:hover, calendar > header > button:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:hover, splitbutton.flat > button:hover, splitbutton.flat > menubutton > button:hover, menubutton.flat > button:hover, button.flat:hover { background: alpha(currentColor,0.07); } + +searchbar > revealer > box .keyboard-activating.close, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, actionbar > revealer > box button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.keyboard-activating.arrow-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.keyboard-activating.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.keyboard-activating.image-text-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.keyboard-activating.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.keyboard-activating.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow.keyboard-activating, window.dialog.message.csd .dialog-action-area > button.keyboard-activating, popover.menu box.circular-buttons button.keyboard-activating.circular.image-button.model, popover.menu box.inline-buttons button.keyboard-activating.image-button.model, filechooser #pathbarbox > stack > box > button.keyboard-activating, filechooser #pathbarbox > stack > box > box > button.keyboard-activating, filechooser #pathbarbox > stack > box > menubutton > button.keyboard-activating, button.keyboard-activating.sidebar-button, button.keyboard-activating.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .keyboard-activating.close, calendar > header > button.keyboard-activating, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating, splitbutton.flat > button.keyboard-activating, splitbutton.flat > menubutton > button.keyboard-activating, menubutton.flat > button.keyboard-activating, searchbar > revealer > box .close:active, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, actionbar > revealer > box button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:active, window.dialog.message.csd .dialog-action-area > button:active, popover.menu box.circular-buttons button.circular.image-button.model:active, popover.menu box.inline-buttons button.image-button.model:active, filechooser #pathbarbox > stack > box > button:active, filechooser #pathbarbox > stack > box > box > button:active, filechooser #pathbarbox > stack > box > menubutton > button:active, button.sidebar-button:active, button.emoji-section.image-button:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:active, calendar > header > button:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:active, splitbutton.flat > button:active, splitbutton.flat > menubutton > button:active, menubutton.flat > button:active, button.flat.keyboard-activating, button.flat:active { background: alpha(currentColor,0.16); } + +searchbar > revealer > box .close:checked, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, actionbar > revealer > box button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked, window.dialog.message.csd .dialog-action-area > button:checked, popover.menu box.circular-buttons button.circular.image-button.model:checked, popover.menu box.inline-buttons button.image-button.model:checked, filechooser #pathbarbox > stack > box > button:checked, filechooser #pathbarbox > stack > box > box > button:checked, filechooser #pathbarbox > stack > box > menubutton > button:checked, button.sidebar-button:checked, button.emoji-section.image-button:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:checked, calendar > header > button:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked, splitbutton.flat > button:checked, splitbutton.flat > menubutton > button:checked, menubutton.flat > button:checked, button.flat:checked { background: alpha(currentColor,0.1); } + +searchbar > revealer > box .close:checked:hover, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, actionbar > revealer > box button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:checked:hover:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked:hover, window.dialog.message.csd .dialog-action-area > button:checked:hover, popover.menu box.circular-buttons button.circular.image-button.model:checked:hover, popover.menu box.inline-buttons button.image-button.model:checked:hover, filechooser #pathbarbox > stack > box > button:checked:hover, filechooser #pathbarbox > stack > box > box > button:checked:hover, filechooser #pathbarbox > stack > box > menubutton > button:checked:hover, button.sidebar-button:checked:hover, button.emoji-section.image-button:checked:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:checked:hover, calendar > header > button:checked:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:hover, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:hover, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:hover, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:hover, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:hover, splitbutton.flat > button:checked:hover, splitbutton.flat > menubutton > button:checked:hover, menubutton.flat > button:checked:hover, button.flat:checked:hover { background: alpha(currentColor,0.13); } + +searchbar > revealer > box .close.keyboard-activating:checked, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, actionbar > revealer > box button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down.keyboard-activating:checked:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow.keyboard-activating:checked, window.dialog.message.csd .dialog-action-area > button.keyboard-activating:checked, popover.menu box.circular-buttons button.circular.image-button.model.keyboard-activating:checked, popover.menu box.inline-buttons button.image-button.model.keyboard-activating:checked, filechooser #pathbarbox > stack > box > button.keyboard-activating:checked, filechooser #pathbarbox > stack > box > box > button.keyboard-activating:checked, filechooser #pathbarbox > stack > box > menubutton > button.keyboard-activating:checked, button.sidebar-button.keyboard-activating:checked, button.emoji-section.image-button.keyboard-activating:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close.keyboard-activating:checked, calendar > header > button.keyboard-activating:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button.keyboard-activating:checked, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating:checked, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating:checked, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating:checked, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button.keyboard-activating:checked, splitbutton.flat > button.keyboard-activating:checked, splitbutton.flat > menubutton > button.keyboard-activating:checked, menubutton.flat > button.keyboard-activating:checked, searchbar > revealer > box .close:checked:active, actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, actionbar > revealer > box button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:checked:active:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:checked:active, window.dialog.message.csd .dialog-action-area > button:checked:active, popover.menu box.circular-buttons button.circular.image-button.model:checked:active, popover.menu box.inline-buttons button.image-button.model:checked:active, filechooser #pathbarbox > stack > box > button:checked:active, filechooser #pathbarbox > stack > box > box > button:checked:active, filechooser #pathbarbox > stack > box > menubutton > button:checked:active, button.sidebar-button:checked:active, button.emoji-section.image-button:checked:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:checked:active, calendar > header > button:checked:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:checked:active, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:active, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:active, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:active, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:checked:active, splitbutton.flat > button:checked:active, splitbutton.flat > menubutton > button:checked:active, menubutton.flat > button:checked:active, button.flat.keyboard-activating:checked, button.flat:checked:active { background: alpha(currentColor,0.19); } + +searchbar > revealer > box .close:disabled:not(:checked), actionbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), searchbar > revealer > box menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), .toolbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), headerbar menubutton.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), actionbar > revealer > box button.arrow-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.arrow-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.arrow-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.arrow-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box button.image-text-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box button.image-text-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar button.image-text-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar button.image-text-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.up:disabled:not(:checked):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:disabled:not(:checked):not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), notebook > header > tabs > arrow:disabled:not(:checked), window.dialog.message.csd .dialog-action-area > button:disabled:not(:checked), popover.menu box.circular-buttons button.circular.image-button.model:disabled:not(:checked), popover.menu box.inline-buttons button.image-button.model:disabled:not(:checked), filechooser #pathbarbox > stack > box > button:disabled:not(:checked), filechooser #pathbarbox > stack > box > box > button:disabled:not(:checked), filechooser #pathbarbox > stack > box > menubutton > button:disabled:not(:checked), button.sidebar-button:disabled:not(:checked), button.emoji-section.image-button:disabled:not(:checked):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), infobar .close:disabled:not(:checked), calendar > header > button:disabled:not(:checked), actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled:not(:checked), actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled:not(:checked), searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled:not(:checked), .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled:not(:checked), headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled:not(:checked), splitbutton.flat > button:disabled:not(:checked), splitbutton.flat > menubutton > button:disabled:not(:checked), menubutton.flat > button:disabled:not(:checked), button.flat:disabled:not(:checked) { filter: opacity(0.3); } + +stackswitcher > button > label { padding: 0 6px; margin: 0 -6px; } + +stackswitcher > button > image { padding: 3px 6px; margin: -3px -6px; } + +stackswitcher > button.text-button { min-width: 100px; } + +button.font separator { background-color: transparent; } + +button.font > box { border-spacing: 6px; } + +button.font > box > box > label { font-weight: bold; } + +row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), menubutton.circular > button, button.circular { min-width: 34px; min-height: 34px; padding: 0; border-radius: 9999px; } + +row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child label, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child label, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child label, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) label, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child label, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child label, button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) label, menubutton.circular > button label, button.circular label { padding: 0; } + +menubutton.pill > button, button.pill { padding: 10px 32px; border-radius: 9999px; } + +button.card { background-color: @card_bg_color; background-clip: padding-box; font-weight: inherit; padding: 0; } + +button.card { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +button.card:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -1px; } + +button.card:hover { background-image: image(alpha(currentColor,0.04)); } + +button.card.keyboard-activating, button.card:active { background-image: image(alpha(currentColor,0.08)); } + +button.card:checked { background-color: @card_bg_color; background-image: image(alpha(@accent_bg_color,0.25)); } + +button.card:checked:hover { background-image: image(alpha(@accent_bg_color,0.32)); } + +button.card.keyboard-activating:checked, button.card:checked:active { background-image: image(alpha(@accent_bg_color,0.39)); } + +button.card.has-open-popup:checked { background-image: image(alpha(@accent_bg_color,0.32)); } + +.osd button.card:checked { background-color: alpha(currentColor,0.1); } + +button.card:drop(active) { color: @accent_bg_color; box-shadow: inset 0 0 0 1px @accent_bg_color; } + +popover.menu modelbutton, button.link, button.link:hover, button.link:active, button.link:checked, columnview > header > button, treeview.view > header > button, window.print treeview.dialog-action-box > header > button { background-color: transparent; } + +button.color { padding: 5px; } + +button.color > colorswatch:only-child { border-radius: 2.5px; } + +button.color > colorswatch:only-child > overlay { border-radius: 2px; } + +button.color > colorswatch:only-child:disabled { filter: none; } + +button.color > colorswatch.light:only-child > overlay { border-color: alpha(@view_fg_color,0.1); } + +menubutton.osd { background: none; color: inherit; } + +menubutton.suggested-action { background-color: @accent_bg_color; color: @accent_fg_color; } + +menubutton.destructive-action { background-color: @destructive_bg_color; color: @destructive_fg_color; } + +menubutton.opaque { background-color: mix(@window_bg_color,@window_fg_color,0.15); color: @window_fg_color; } + +menubutton.suggested-action, menubutton.destructive-action, menubutton.opaque { border-radius: 6px; } + +menubutton.suggested-action.circular, menubutton.suggested-action.pill, menubutton.destructive-action.circular, menubutton.destructive-action.pill, menubutton.opaque.circular, menubutton.opaque.pill { border-radius: 9999px; } + +menubutton.suggested-action > button, menubutton.suggested-action > button:checked, menubutton.destructive-action > button, menubutton.destructive-action > button:checked, menubutton.opaque > button, menubutton.opaque > button:checked { background-color: transparent; color: inherit; } + +menubutton.image-button > button { min-width: 24px; padding-left: 5px; padding-right: 5px; } + +menubutton.card > button { border-radius: 12px; } + +menubutton arrow { min-height: 16px; min-width: 16px; } + +menubutton arrow.none { -gtk-icon-source: -gtk-icontheme("open-menu-symbolic"); } + +menubutton arrow.down { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +menubutton arrow.up { -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +menubutton arrow.left { -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); } + +menubutton arrow.right { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +splitbutton { border-radius: 6px; } + +splitbutton, splitbutton > separator { transition: background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); transition-property: background; } + +splitbutton > separator { margin-top: 6px; margin-bottom: 6px; background: none; } + +splitbutton > menubutton > button { padding-left: 4px; padding-right: 4px; } + +splitbutton.image-button > button { min-width: 24px; padding-left: 5px; padding-right: 5px; } + +splitbutton.text-button.image-button > button, splitbutton.image-text-button > button { padding-left: 9px; padding-right: 9px; } + +splitbutton.text-button.image-button > button > box, splitbutton.image-text-button > button > box { border-spacing: 6px; } + +splitbutton:disabled { filter: opacity(0.5); } + +splitbutton:disabled > button, splitbutton:disabled > menubutton > button { filter: none; } + +splitbutton > button:dir(ltr), splitbutton > menubutton > button:dir(rtl) { border-top-right-radius: 0; border-bottom-right-radius: 0; margin-right: -1px; } + +splitbutton > button:dir(rtl), splitbutton > menubutton > button:dir(ltr) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, splitbutton.flat > separator { background: alpha(currentColor,0.3); } + +actionbar > revealer > box splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.flat:hover, splitbutton.flat:active, splitbutton.flat:checked { background: alpha(currentColor,0.07); } + +actionbar > revealer > box splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:hover:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, actionbar > revealer > box splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:active:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, actionbar > revealer > box splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:checked:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, splitbutton.flat:hover > separator, splitbutton.flat:active > separator, splitbutton.flat:checked > separator { background: none; } + +actionbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), splitbutton.flat:disabled { filter: opacity(0.3); } + +actionbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled, searchbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled, .toolbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled, headerbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button:disabled, actionbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled, searchbar > revealer > box splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled, .toolbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled, headerbar splitbutton:disabled:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button:disabled, splitbutton.flat:disabled > button:disabled, splitbutton.flat:disabled > menubutton > button:disabled { filter: none; } + +actionbar > revealer > box splitbutton:focus-within:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, searchbar > revealer > box splitbutton:focus-within:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, .toolbar splitbutton:focus-within:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, headerbar splitbutton:focus-within:focus-visible:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > separator, splitbutton.flat:focus-within:focus-visible > separator { background: none; } + +actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > button, actionbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, searchbar > revealer > box splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, .toolbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, headerbar splitbutton:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) > menubutton > button, splitbutton.flat > button, splitbutton.flat > menubutton > button { border-radius: 6px; } + +splitbutton.suggested-action { background-color: @accent_bg_color; color: @accent_fg_color; } + +splitbutton.destructive-action { background-color: @destructive_bg_color; color: @destructive_fg_color; } + +splitbutton.opaque { background-color: mix(@window_bg_color,@window_fg_color,0.15); color: @window_fg_color; } + +splitbutton.suggested-action > button, splitbutton.suggested-action > button:checked, splitbutton.suggested-action > menubutton > button, splitbutton.suggested-action > menubutton > button:checked, splitbutton.destructive-action > button, splitbutton.destructive-action > button:checked, splitbutton.destructive-action > menubutton > button, splitbutton.destructive-action > menubutton > button:checked, splitbutton.opaque > button, splitbutton.opaque > button:checked, splitbutton.opaque > menubutton > button, splitbutton.opaque > menubutton > button:checked { color: inherit; background-color: transparent; } + +splitbutton.suggested-action > menubutton > button:dir(ltr), splitbutton.destructive-action > menubutton > button:dir(ltr), splitbutton.opaque > menubutton > button:dir(ltr) { box-shadow: inset 1px 0 alpha(currentColor,0.3); } + +splitbutton.suggested-action > menubutton > button:dir(rtl), splitbutton.destructive-action > menubutton > button:dir(rtl), splitbutton.opaque > menubutton > button:dir(rtl) { box-shadow: inset -1px 0 alpha(currentColor,0.3); } + +splitbutton > menubutton > button > arrow.none { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +buttoncontent > box { border-spacing: 6px; } + +buttoncontent > box > label { font-weight: bold; } + +buttoncontent > box > label:dir(ltr) { padding-right: 2px; } + +buttoncontent > box > label:dir(rtl) { padding-left: 2px; } + +.arrow-button > box > buttoncontent > box > label:dir(ltr), splitbutton > button > buttoncontent > box > label:dir(ltr) { padding-right: 0; } + +.arrow-button > box > buttoncontent > box > label:dir(rtl), splitbutton > button > buttoncontent > box > label:dir(rtl) { padding-left: 0; } + +tabbutton label { font-weight: 800; font-size: 8pt; } + +tabbutton label.small { font-size: 6pt; } + +tabbutton indicatorbin > indicator, tabbutton indicatorbin > mask { transform: translate(-1px, 1px); } + +calendar { color: @view_fg_color; background-clip: padding-box; border: 1px solid alpha(currentColor,0.15); font-feature-settings: "tnum"; } + +calendar > header { border-bottom: 1px solid alpha(currentColor,0.15); } + +calendar > header > button { border-radius: 0; } + +calendar > grid { padding-left: 3px; padding-bottom: 3px; } + +calendar > grid > label.today { box-shadow: inset 0px -2px alpha(currentColor,0.15); } + +calendar > grid > label.today:selected { box-shadow: none; } + +calendar > grid > label { margin-top: 3px; margin-right: 3px; } + +calendar > grid > label { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +calendar > grid > label:focus { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +calendar > grid > label.day-number { padding: 3px; } + +calendar > grid > label.day-number:checked { border-radius: 6px; background-color: alpha(@accent_bg_color,0.3); } + +calendar > grid > label.day-number:selected { border-radius: 6px; background-color: @accent_bg_color; color: @accent_fg_color; } + +calendar > grid > label.day-number.other-month { color: alpha(currentColor,0.3); } + +checkbutton { border-spacing: 4px; border-radius: 9px; padding: 3px; } + +checkbutton { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +checkbutton:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +.osd checkbutton:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +checkbutton.text-button { padding: 4px; } + +check, radio { min-height: 14px; min-width: 14px; -gtk-icon-size: 14px; padding: 3px; box-shadow: inset 0 0 0 2px alpha(currentColor,0.15); } + +check:not(:checked):not(:indeterminate):hover, radio:not(:checked):not(:indeterminate):hover { box-shadow: inset 0 0 0 2px alpha(currentColor,0.2); } + +check:not(:checked):not(:indeterminate):active, radio:not(:checked):not(:indeterminate):active { background-color: alpha(currentColor,0.25); box-shadow: none; } + +check:checked, check:indeterminate, radio:checked, radio:indeterminate { background-color: @accent_bg_color; color: @accent_fg_color; box-shadow: none; } + +check:checked:hover, check:indeterminate:hover, radio:checked:hover, radio:indeterminate:hover { background-image: image(alpha(currentColor,0.1)); } + +check:checked:active, check:indeterminate:active, radio:checked:active, radio:indeterminate:active { background-image: image(rgba(0, 0, 0, 0.2)); } + +check:disabled, radio:disabled { filter: opacity(0.5); } + +.osd check:checked, .osd check:indeterminate, .osd radio:checked, .osd radio:indeterminate { background-color: rgba(255, 255, 255, 0.75); color: rgba(0, 0, 0, 0.75); } + +check { border-radius: 6px; } + +check:checked { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/check-symbolic.symbolic.png")), -gtk-recolor(url("assets/check@2-symbolic.symbolic.png"))); } + +radio { border-radius: 100%; } + +radio:checked { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/bullet-symbolic.symbolic.png")), -gtk-recolor(url("assets/bullet@2-symbolic.symbolic.png"))); } + +check:indeterminate, radio:indeterminate { -gtk-icon-source: -gtk-scaled(-gtk-recolor(url("assets/dash-symbolic.symbolic.png")), -gtk-recolor(url("assets/dash@2-symbolic.symbolic.png"))); } + +checkbutton.selection-mode { border-radius: 100px; } + +checkbutton.selection-mode check, checkbutton.selection-mode radio { padding: 7px; border-radius: 100px; } + +checkbutton.selection-mode label:dir(ltr) { margin-right: 6px; } + +checkbutton.selection-mode label:dir(rtl) { margin-left: 6px; } + +colorswatch { outline: 0 solid transparent; outline-offset: 6px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +colorswatch:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 4px; outline-offset: -2px; } + +colorswatch.top { border-top-left-radius: 6.5px; border-top-right-radius: 6.5px; } + +colorswatch.top > overlay { border-top-left-radius: 6px; border-top-right-radius: 6px; } + +colorswatch.bottom { border-bottom-left-radius: 6.5px; border-bottom-right-radius: 6.5px; } + +colorswatch.bottom > overlay { border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; } + +colorswatch.left, colorswatch:first-child:not(.top) { border-top-left-radius: 6.5px; border-bottom-left-radius: 6.5px; } + +colorswatch.left > overlay, colorswatch:first-child:not(.top) > overlay { border-top-left-radius: 6px; border-bottom-left-radius: 6px; } + +colorswatch.right, colorswatch:last-child:not(.bottom) { border-top-right-radius: 6.5px; border-bottom-right-radius: 6.5px; } + +colorswatch.right > overlay, colorswatch:last-child:not(.bottom) > overlay { border-top-right-radius: 6px; border-bottom-right-radius: 6px; } + +colorswatch.dark > overlay { color: white; } + +colorswatch.light > overlay { color: rgba(0, 0, 0, 0.75); box-shadow: inset 0 0 0 1px alpha(@view_fg_color,0.1); } + +colorswatch.light:drop(active) > overlay { box-shadow: inset 0 0 0 2px @accent_bg_color; } + +colorswatch.dark:drop(active) > overlay { box-shadow: inset 0 0 0 2px @accent_bg_color; } + +colorswatch#add-color-button > overlay { border-radius: 6px 0 0 6px; } + +colorswatch#add-color-button:only-child > overlay { border-radius: 6px; } + +colorswatch:disabled { filter: opacity(0.5); } + +colorswatch#editor-color-sample { border-radius: 6px; } + +colorswatch#editor-color-sample > overlay { border-radius: 6.5px; } + +plane { outline: 0 solid transparent; outline-offset: 6px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +plane:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: 2px; } + +colorchooser .popover.osd { border-radius: 12px; } + +columnview, treeview.view, window.print treeview.dialog-action-box { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +columnview:focus:focus-visible, treeview.view:focus:focus-visible, window.print treeview.dialog-action-box:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +columnview:drop(active), treeview.view:drop(active), window.print treeview.dialog-action-box:drop(active) { box-shadow: none; } + +columnview > header > button, treeview.view > header > button, window.print treeview.dialog-action-box > header > button { padding-top: 3px; padding-bottom: 3px; padding-left: 6px; padding-right: 6px; border-radius: 0; box-shadow: none; line-height: 100%; border-left: 1px solid transparent; } + +columnview > header > button:first-child, treeview.view > header > button:first-child, window.print treeview.dialog-action-box > header > button:first-child { border-left-width: 0; } + +columnview > header > button > box, treeview.view > header > button > box, window.print treeview.dialog-action-box > header > button > box { color: alpha(currentColor,0.4); font-weight: 700; font-size: 9pt; border-spacing: 6px; } + +columnview > header > button:hover > box, treeview.view > header > button:hover > box, window.print treeview.dialog-action-box > header > button:hover > box { color: alpha(currentColor,0.7); box-shadow: none; } + +columnview > header > button:active > box, treeview.view > header > button:active > box, window.print treeview.dialog-action-box > header > button:active > box { color: currentColor; } + +columnview > header > button sort-indicator, treeview.view > header > button sort-indicator, window.print treeview.dialog-action-box > header > button sort-indicator { min-height: 16px; min-width: 16px; } + +columnview > header > button sort-indicator.ascending, treeview.view > header > button sort-indicator.ascending, window.print treeview.dialog-action-box > header > button sort-indicator.ascending { -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +columnview > header > button sort-indicator.descending, treeview.view > header > button sort-indicator.descending, window.print treeview.dialog-action-box > header > button sort-indicator.descending { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +columnview button.dnd:active, columnview button.dnd:selected, columnview button.dnd:hover, columnview button.dnd, treeview.view button.dnd, window.print treeview.dialog-action-box button.dnd, columnview header.button.dnd:active, columnview header.button.dnd:selected, columnview header.button.dnd:hover, columnview header.button.dnd, treeview.view header.button.dnd, window.print treeview.dialog-action-box header.button.dnd { color: @accent_fg_color; background-color: @accent_bg_color; transition: none; } + +columnview.view > listview.view, treeview.view > listview.view, window.print columnview.dialog-action-box > listview.view, window.print treeview.dialog-action-box > listview.view, window.print columnview.view > listview.dialog-action-box, window.print treeview.view > listview.dialog-action-box, window.print columnview.dialog-action-box > listview.dialog-action-box, window.print treeview.dialog-action-box > listview.dialog-action-box { background: none; color: inherit; } + +columnview > listview > row, treeview.view > listview > row, window.print treeview.dialog-action-box > listview > row { padding: 0; } + +columnview > listview > row > cell, treeview.view > listview > row > cell, window.print treeview.dialog-action-box > listview > row > cell { padding: 8px 6px; } + +columnview > listview > row > cell:not(:first-child), treeview.view > listview > row > cell:not(:first-child), window.print treeview.dialog-action-box > listview > row > cell:not(:first-child) { border-left: 1px solid transparent; } + +columnview.column-separators > listview > row > cell, treeview.column-separators.view > listview > row > cell, window.print treeview.column-separators.dialog-action-box > listview > row > cell, columnview.column-separators > header > button, treeview.column-separators.view > header > button, window.print treeview.column-separators.dialog-action-box > header > button { border-left-color: alpha(currentColor,0.15); } + +columnview > listview.separators:not(.horizontal) > row:not(.separator), treeview.view > listview.separators:not(.horizontal) > row:not(.separator), window.print treeview.dialog-action-box > listview.separators:not(.horizontal) > row:not(.separator) { border-top: 1px solid alpha(currentColor,0.15); border-bottom: none; } + +columnview.data-table > listview > row > cell, treeview.data-table.view > listview > row > cell, window.print treeview.data-table.dialog-action-box > listview > row > cell { padding-top: 2px; padding-bottom: 2px; } + +columnview ~ undershoot.top, treeview.view ~ undershoot.top, window.print treeview.dialog-action-box ~ undershoot.top { box-shadow: inset 0 1px alpha(@shade_color,0.75); background: linear-gradient(to bottom, alpha(@shade_color,0.75), transparent 4px); } + +columnview row:not(:selected) cell editablelabel:not(.editing):focus-within, treeview.view row:not(:selected) cell editablelabel:not(.editing):focus-within, window.print treeview.dialog-action-box row:not(:selected) cell editablelabel:not(.editing):focus-within { outline: 2px solid alpha(@accent_color,0.5); } + +columnview row:not(:selected) cell editablelabel.editing:focus-within, treeview.view row:not(:selected) cell editablelabel.editing:focus-within, window.print treeview.dialog-action-box row:not(:selected) cell editablelabel.editing:focus-within { outline: 2px solid @accent_color; } + +treeexpander { border-spacing: 4px; } + +.dialog-action-area { margin: 6px; border-spacing: 6px; } + +/**************** Print dialog * */ +window.print drawing { color: @window_fg_color; background: none; border: none; padding: 0; } + +window.print drawing paper { background-color: white; color: rgba(0, 0, 0, 0.8); background-clip: padding-box; border: 1px solid alpha(currentColor,0.15); } + +/******************** Page setup dalog * */ +/****************** GtkAboutDialog * */ +window.aboutdialog image.large-icons { -gtk-icon-size: 128px; } + +/************************* GtkColorChooserDialog * */ +/************* AdwDialog * */ +floating-sheet > dimming { background-color: alpha(@shade_color,2); } + +floating-sheet > sheet { border-radius: 12px; box-shadow: 0 2px 8px 2px rgba(0, 0, 0, 0.07), 0 3px 20px 10px rgba(0, 0, 0, 0.05), 0 6px 32px 16px rgba(0, 0, 0, 0.02), 0 0 0 1px rgba(0, 0, 0, 0.05); outline: 1px solid rgba(255, 255, 255, 0.07); outline-offset: -1px; } + +dialog.bottom-sheet.landscape sheet { margin-left: 30px; margin-right: 30px; } + +dialog.bottom-sheet.landscape sheet > outline.flush-left, dialog.bottom-sheet.landscape sheet > outline.flush-right, dialog.bottom-sheet.landscape sheet > outline.flush-left.flush-right { box-shadow: inset 1px 0 rgba(255, 255, 255, 0.07), inset -1px 0 rgba(255, 255, 255, 0.07), inset 0 1px rgba(255, 255, 255, 0.07); } + +dialog-host > dialog.background { background: none; } + +dialog-host > dialog.background sheet { background-color: @window_bg_color; color: @window_fg_color; } + +dialog-host > dialog.view, window.print dialog-host > dialog.dialog-action-box { background: none; } + +dialog-host > dialog.osd { background: none; } + +/*********************** GtkAppChooserDialog * */ +window.appchooser headerbar.titlebar > windowhandle { padding-top: 3px; } + +window.appchooser headerbar.titlebar box.start + box { margin-top: -6px; margin-bottom: -6px; min-height: 12px; } + +window.appchooser searchbar { background: none; } + +window.appchooser .dialog-vbox > box > box:not(.dialog-action-area) { margin: 6px; } + +window.appchooser .dialog-action-area { margin-top: 0; } + +/**************** GtkAssistant * */ +window.assistant .sidebar { padding: 6px; background-color: @sidebar_bg_color; color: @sidebar_fg_color; } + +window.assistant .sidebar:not(separator):dir(ltr) { border-right: none; box-shadow: inset -1px 0 @sidebar_border_color; } + +window.assistant .sidebar:not(separator):dir(rtl) { box-shadow: inset 1px 0 @sidebar_border_color; } + +window.assistant .sidebar:backdrop { background-color: @sidebar_backdrop_color; transition: background-color 200ms ease-out; } + +window.assistant .sidebar > label { padding: 6px 12px; border-radius: 6px; } + +window.assistant .sidebar > label.highlight { background-color: alpha(currentColor,0.1); } + +/*************** GtkComboBox * */ +combobox button { padding-top: 2px; padding-bottom: 2px; min-height: 30px; } + +/*************** GtkIconView * */ +iconview { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +iconview:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +iconview:drop(active) { box-shadow: none; } + +iconview > dndtarget:drop(active) { border-style: solid; border-width: 1px; border-color: @accent_bg_color; } + +/************** GtkInfoBar * */ +infobar > revealer > box { padding: 6px; padding-bottom: 7px; border-spacing: 6px; box-shadow: inset 0 -1px @shade_color; } + +infobar > revealer > box > box { border-spacing: 6px; } + +infobar.action:hover > revealer > box { background-image: image(alpha(currentColor,0.05)); } + +infobar.action:active > revealer > box { background-image: image(alpha(currentColor,0.1)); } + +infobar.info > revealer > box { background-color: mix(@accent_bg_color,@window_bg_color,0.7); color: @window_fg_color; } + +infobar.question > revealer > box { background-color: mix(@accent_bg_color,@window_bg_color,0.7); color: @window_fg_color; } + +infobar.warning > revealer > box { background-color: mix(@warning_bg_color,@window_bg_color,0.7); color: @window_fg_color; } + +infobar.error > revealer > box { background-color: mix(@error_bg_color,@window_bg_color,0.7); color: @window_fg_color; } + +infobar .close { min-width: 18px; min-height: 18px; padding: 4px; border-radius: 50%; } + +/**************** GtkStatusBar * */ +statusbar { padding: 6px 10px 6px 10px; } + +/*************** GtkTreeView * */ +treeview.view, window.print treeview.dialog-action-box { border-left-color: mix(currentColor,@view_bg_color,0.8); border-top-color: mix(currentColor,@view_bg_color,0.8); } + +treeview.view:selected:focus, treeview.view:selected, window.print treeview.dialog-action-box:selected { border-radius: 0; } + +treeview.view.separator, window.print treeview.separator.dialog-action-box { min-height: 2px; color: alpha(currentColor,0.15); } + +treeview.view.expander, window.print treeview.expander.dialog-action-box { min-width: 16px; min-height: 16px; -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); color: alpha(currentColor,0.7); } + +treeview.view.expander:dir(rtl), window.print treeview.expander.dialog-action-box:dir(rtl) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); } + +treeview.view.expander:hover, window.print treeview.expander.dialog-action-box:hover, treeview.view.expander:active, window.print treeview.expander.dialog-action-box:active { color: currentColor; } + +treeview.view.expander:checked, window.print treeview.expander.dialog-action-box:checked { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +treeview.view.expander:disabled, window.print treeview.expander.dialog-action-box:disabled { color: alpha(currentColor,0.5); } + +treeview.view > dndtarget:drop(active), window.print treeview.dialog-action-box > dndtarget:drop(active) { border-style: solid none; border-width: 1px; border-color: @accent_bg_color; } + +treeview.view > dndtarget.after:drop(active), window.print treeview.dialog-action-box > dndtarget.after:drop(active) { border-top-style: none; } + +treeview.view > dndtarget.before:drop(active), window.print treeview.dialog-action-box > dndtarget.before:drop(active) { border-bottom-style: none; } + +treeview.view > header > button, window.print treeview.dialog-action-box > header > button { padding-left: 4px; padding-right: 4px; border-bottom: 1px solid alpha(currentColor,0.15); } + +treeview.view.progressbar, window.print treeview.progressbar.dialog-action-box { box-shadow: none; } + +treeview.view.progressbar, window.print treeview.progressbar.dialog-action-box, treeview.view.progressbar:selected { background-color: @accent_bg_color; color: @accent_fg_color; } + +treeview.view.trough, window.print treeview.trough.dialog-action-box { background-color: alpha(currentColor,0.1); } + +treeview.view ~ undershoot.top, window.print treeview.dialog-action-box ~ undershoot.top { box-shadow: none; background: none; } + +treeview.view acceleditor > label, window.print treeview.dialog-action-box acceleditor > label { background-color: mix(currentColor,@view_bg_color,0.9); } + +treeview.navigation-sidebar { padding: 0; } + +treeview.navigation-sidebar:selected:focus, treeview.navigation-sidebar:selected { background-color: alpha(currentColor,0.1); } + +treeview entry:focus-within:dir(rtl), treeview entry:focus-within:dir(ltr) { background-color: @view_bg_color; transition-property: color, background; } + +treeview entry.flat, treeview entry { border-radius: 0; background-image: none; background-color: @view_bg_color; } + +treeview entry.flat:focus-within, treeview entry:focus-within { border-color: @accent_color; } + +treeview spinbutton:not(.vertical) { min-height: 0; border-style: none; border-radius: 0; } + +treeview spinbutton:not(.vertical) > text { min-height: 0; padding: 1px 2px; } + +.sidebar:not(separator):dir(ltr), .sidebar.left:not(separator), .sidebar.left:not(separator):dir(rtl) { border-right: 1px solid alpha(currentColor,0.15); border-left-style: none; } + +.sidebar:not(separator):dir(rtl), .sidebar.right:not(separator) { border-left: 1px solid alpha(currentColor,0.15); border-right-style: none; } + +.sidebar listview.view, .sidebar window.print listview.dialog-action-box, window.print .sidebar listview.dialog-action-box, .sidebar list { background-color: transparent; color: inherit; } + +paned .sidebar.left, paned .sidebar.right, paned .sidebar.left:dir(rtl), paned .sidebar:dir(rtl), paned .sidebar:dir(ltr), paned .sidebar { border-style: none; } + +.large-title { font-weight: 300; font-size: 24pt; } + +dropdown > button > box, combobox > button > box { border-spacing: 6px; } + +dropdown > button > box > stack > row.activatable:hover, combobox > button > box > stack > row.activatable:hover, dropdown > button > box > stack > row.activatable:active, combobox > button > box > stack > row.activatable:active { background: none; } + +dropdown arrow, combobox arrow { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); min-height: 16px; min-width: 16px; } + +dropdown:drop(active), combobox:drop(active) { box-shadow: none; } + +dropdown popover.menu, combobox popover.menu { padding-top: 6px; } + +dropdown popover.menu listview > row, combobox popover.menu listview > row { min-width: 0; } + +dropdown popover.menu .dropdown-searchbar, combobox popover.menu .dropdown-searchbar { padding: 6px; } + +dropdown popover.menu .dropdown-searchbar + scrolledwindow > undershoot.top, combobox popover.menu .dropdown-searchbar + scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(@popover_shade_color,0.75); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover.emoji-picker > contents { padding: 0; } + +.emoji-searchbar { padding: 6px; } + +.emoji-toolbar { padding: 3px; } + +button.emoji-section.image-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) { min-width: 32px; min-height: 32px; } + +popover.emoji-picker emoji { font-size: x-large; padding: 6px; border-radius: 6px; } + +popover.emoji-picker emoji:focus, popover.emoji-picker emoji:hover { background: alpha(currentColor,0.07); } + +popover.emoji-picker emoji:active { background: alpha(currentColor,0.16); } + +popover.emoji-picker scrolledwindow.view, popover.emoji-picker window.print scrolledwindow.dialog-action-box, window.print popover.emoji-picker scrolledwindow.dialog-action-box { background: none; color: inherit; } + +popover.emoji-picker scrolledwindow.view > undershoot.top, popover.emoji-picker window.print scrolledwindow.dialog-action-box > undershoot.top, window.print popover.emoji-picker scrolledwindow.dialog-action-box > undershoot.top { box-shadow: inset 0 1px alpha(@popover_shade_color,0.75); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover.emoji-picker scrolledwindow.view > undershoot.bottom, popover.emoji-picker window.print scrolledwindow.dialog-action-box > undershoot.bottom, window.print popover.emoji-picker scrolledwindow.dialog-action-box > undershoot.bottom { box-shadow: inset 0 -1px alpha(@popover_shade_color,0.75); background: linear-gradient(to top, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover.emoji-completion > contents { padding: 6px; padding-bottom: 4px; } + +emoji-completion-row { padding: 6px; margin-bottom: 2px; border-radius: 6px; } + +emoji-completion-row:dir(ltr) { padding-right: 12px; } + +emoji-completion-row:dir(rtl) { padding-left: 12px; } + +emoji-completion-row > box { border-spacing: 6px; } + +emoji-completion-row:focus, emoji-completion-row:hover { background-color: alpha(currentColor,0.1); color: @popover_fg_color; } + +emoji-completion-row:active { background-color: alpha(currentColor,0.16); } + +spinbutton, entry { min-height: 34px; padding-left: 9px; padding-right: 9px; border-radius: 6px; border-spacing: 6px; background-color: alpha(currentColor,0.1); background-clip: padding-box; caret-color: currentColor; } + +spinbutton, entry { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +spinbutton:focus-within, entry:focus-within { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +.osd spinbutton:focus-within, .osd entry:focus-within { outline-color: rgba(255, 255, 255, 0.5); } + +spinbutton > text > block-cursor, entry > text > block-cursor { color: @view_bg_color; background-color: @view_fg_color; } + +spinbutton.flat, entry.flat:focus-within, entry.flat:disabled, entry.flat { min-height: 0; padding: 2px; background-color: transparent; box-shadow: none; border-radius: 0; } + +spinbutton:disabled, entry:disabled { filter: opacity(0.5); } + +spinbutton.error, entry.error { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +spinbutton.error:focus-within, entry.error:focus-within { outline-color: alpha(currentColor,0.5); outline-width: 2px; outline-offset: -2px; } + +spinbutton.error > text > selection:focus-within, entry.error > text > selection:focus-within { background-color: alpha(@error_color,0.2); } + +spinbutton.error > text > cursor-handle > contents, entry.error > text > cursor-handle > contents { background-color: currentColor; } + +spinbutton.error > progress > trough > progress, entry.error > progress > trough > progress { border-color: currentColor; } + +spinbutton.warning, entry.warning { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +spinbutton.warning:focus-within, entry.warning:focus-within { outline-color: alpha(currentColor,0.5); outline-width: 2px; outline-offset: -2px; } + +spinbutton.warning > text > selection:focus-within, entry.warning > text > selection:focus-within { background-color: alpha(@warning_color,0.2); } + +spinbutton.warning > text > cursor-handle > contents, entry.warning > text > cursor-handle > contents { background-color: currentColor; } + +spinbutton.warning > progress > trough > progress, entry.warning > progress > trough > progress { border-color: currentColor; } + +spinbutton.success, entry.success { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +spinbutton.success:focus-within, entry.success:focus-within { outline-color: alpha(currentColor,0.5); outline-width: 2px; outline-offset: -2px; } + +spinbutton.success > text > selection:focus-within, entry.success > text > selection:focus-within { background-color: alpha(@success_color,0.2); } + +spinbutton.success > text > cursor-handle > contents, entry.success > text > cursor-handle > contents { background-color: currentColor; } + +spinbutton.success > progress > trough > progress, entry.success > progress > trough > progress { border-color: currentColor; } + +spinbutton > image, entry > image { opacity: 0.7; } + +spinbutton > image:hover, entry > image:hover { opacity: 1; } + +spinbutton > image:active, entry > image:active { opacity: 0.8; } + +spinbutton > image.left, entry > image.left { margin-right: 6px; } + +spinbutton > image.right, entry > image.right { margin-left: 6px; } + +spinbutton.password image.caps-lock-indicator, entry.password image.caps-lock-indicator { opacity: 0.3; } + +spinbutton:drop(active), entry:drop(active):focus-within, entry:drop(active) { border-color: @accent_bg_color; box-shadow: inset 0 0 0 1px @accent_bg_color; } + +spinbutton > progress, entry > progress { margin-bottom: 3px; } + +spinbutton > progress > trough, entry > progress > trough { min-height: 2px; } + +spinbutton > progress > trough > progress, entry > progress > trough > progress { background-color: transparent; background-image: none; border-radius: 0; border-width: 0 0 2px; border-color: @accent_bg_color; border-style: solid; box-shadow: none; } + +.osd spinbutton > progress > trough > progress, .osd entry > progress > trough > progress { border-color: rgba(255, 255, 255, 0.75); } + +expander { min-width: 16px; min-height: 16px; -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +expander:dir(rtl) { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); } + +expander:disabled { filter: opacity(0.5); } + +expander:checked { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +expander-widget > box > title { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +expander-widget:focus:focus-visible > box > title { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +expander-widget > box > title { border-radius: 6px; } + +expander-widget > box > title > expander { opacity: .7; } + +expander-widget > box > title:hover > expander, expander-widget > box > title:active > expander { opacity: 1; } + +placessidebar .navigation-sidebar > row { padding: 0; } + +placessidebar .navigation-sidebar > row > revealer { padding: 0 14px; } + +placessidebar .navigation-sidebar > row image.sidebar-icon:dir(ltr) { padding-right: 8px; } + +placessidebar .navigation-sidebar > row image.sidebar-icon:dir(rtl) { padding-left: 8px; } + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(ltr) { padding-right: 2px; } + +placessidebar .navigation-sidebar > row label.sidebar-label:dir(rtl) { padding-left: 2px; } + +button.sidebar-button { min-height: 26px; min-width: 26px; margin-top: 3px; margin-bottom: 3px; padding: 0; border-radius: 100%; } + +placessidebar .navigation-sidebar > row:selected:active { box-shadow: none; } + +placessidebar .navigation-sidebar > row.sidebar-placeholder-row { padding: 0 8px; min-height: 2px; background-image: image(@accent_bg_color); background-clip: content-box; } + +placessidebar .navigation-sidebar > row.sidebar-new-bookmark-row { color: @accent_color; } + +placessidebar .navigation-sidebar > row:drop(active):not(:disabled) { color: @accent_bg_color; box-shadow: inset 0 0 0 1px @accent_bg_color; } + +row image.sidebar-icon { opacity: 0.7; } + +row .sidebar-button { opacity: 0.7; } + +row .sidebar-button:hover, row .sidebar-button:active, row .sidebar-button.keyboard-activating { opacity: 1; } + +placesview .server-list-button > image { transition: -gtk-icon-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); -gtk-icon-transform: rotate(0turn); } + +placesview .server-list-button:checked > image { -gtk-icon-transform: rotate(-0.5turn); } + +placesview > actionbar > revealer > box > box { border-spacing: 6px; } + +filechooser { box-shadow: 0 1px alpha(currentColor,0.15); } + +filechooser pathbar button:not(.image-button) { padding-left: 9px; padding-right: 9px; } + +filechooser pathbar button > box { border-spacing: 4px; } + +filechooser pathbar button > box > label { padding-left: 2px; padding-right: 2px; } + +filechooser columnview > listview > row > cell, filechooser treeview.view > listview > row > cell, filechooser window.print treeview.dialog-action-box > listview > row > cell, window.print filechooser treeview.dialog-action-box > listview > row > cell { padding: 0; } + +filechooser columnview > listview > row > cell > filelistcell, filechooser treeview.view > listview > row > cell > filelistcell, filechooser window.print treeview.dialog-action-box > listview > row > cell > filelistcell, window.print filechooser treeview.dialog-action-box > listview > row > cell > filelistcell { padding: 8px 6px; } + +filechooser gridview { padding: 15px; } + +filechooser gridview ~ undershoot.top { box-shadow: inset 0 1px alpha(@shade_color,0.75); background: linear-gradient(to bottom, alpha(@shade_color,0.75), transparent 4px); } + +filechooser gridview > child { border-radius: 12px; padding: 0; margin: 3px; } + +filechooser gridview > child > filelistcell { padding: 6px 12px; } + +filechooser gridview > child filethumbnail image { filter: drop-shadow(0px 1px 1px rgba(0, 0, 0, 0.3)); } + +filechooser gridview > child box { border-spacing: 6px; } + +filechooser > box > actionbar { box-shadow: 0 -1px alpha(@headerbar_shade_color,0.5), 0 -2px 4px alpha(@headerbar_shade_color,0.5); } + +filechooser > box > actionbar > revealer > box { box-shadow: none; padding-top: 6px; } + +filechooser scrolledwindow + actionbar > revealer > box { background-color: mix(@accent_bg_color,@view_bg_color,0.7); color: @window_fg_color; box-shadow: none; padding-top: 6px; font-weight: bold; } + +filechooser scrolledwindow + actionbar > revealer > box:backdrop { background-color: mix(@accent_bg_color,@view_bg_color,0.85); } + +filechooser placesview > stack > scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(@shade_color,0.75); background: linear-gradient(to top, alpha(@shade_color,0.75), transparent 4px); } + +filechooser placesview > actionbar > revealer > box { background: @view_bg_color; color: @view_fg_color; box-shadow: none; padding-top: 6px; } + +filechooser placesview > actionbar > revealer > box:backdrop { background: @view_bg_color; transition: none; } + +filechooser placessidebar { background-color: @sidebar_bg_color; color: @sidebar_fg_color; } + +filechooser placessidebar:backdrop { background-color: @sidebar_backdrop_color; transition: background-color 200ms ease-out; } + +filechooser paned.horizontal > separator:dir(ltr) { box-shadow: inset 1px 0 @sidebar_bg_color, inset 1px 0 @sidebar_border_color; } + +filechooser paned.horizontal > separator:dir(ltr):backdrop { box-shadow: inset 1px 0 @sidebar_backdrop_color, inset 1px 0 @sidebar_border_color; } + +filechooser paned.horizontal > separator:dir(rtl) { box-shadow: inset -1px 0 @sidebar_bg_color, inset -1px 0 @sidebar_border_color; } + +filechooser paned.horizontal > separator:dir(rtl):backdrop { box-shadow: inset -1px 0 @sidebar_backdrop_color, inset -1px 0 @sidebar_border_color; } + +filechooser paned.horizontal > separator:backdrop { transition: box-shadow 200ms ease-out; } + +/* Fix header bar height in the file chooser */ +window.filechooser headerbar box.start + box.vertical { margin-top: -6px; margin-bottom: -6px; min-height: 12px; } + +headerbar { min-height: 47px; background-color: @headerbar_bg_color; color: @headerbar_fg_color; box-shadow: inset 0 -1px @headerbar_shade_color, inset 1px 0 alpha(@headerbar_border_color,0.15), inset -1px 0 alpha(@headerbar_border_color,0.15); margin-left: -1px; margin-right: -1px; } + +headerbar > windowhandle > box { padding: 6px 7px 7px 7px; } + +headerbar > windowhandle > box > box.start, headerbar > windowhandle > box > box.end { border-spacing: 6px; } + +headerbar > windowhandle > box > box.start:dir(ltr), headerbar > windowhandle > box > box.end:dir(rtl), headerbar > windowhandle > box > widget > box.start:dir(ltr), headerbar > windowhandle > box > widget > box.end:dir(rtl) { margin-right: 6px; } + +headerbar > windowhandle > box > box.start:dir(rtl), headerbar > windowhandle > box > box.end:dir(ltr), headerbar > windowhandle > box > widget > box.start:dir(rtl), headerbar > windowhandle > box > widget > box.end:dir(ltr) { margin-left: 6px; } + +headerbar:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +headerbar:backdrop > windowhandle { filter: opacity(0.5); transition: filter 200ms ease-out; } + +headerbar.default-decoration { min-height: 37px; } + +headerbar.default-decoration > windowhandle > box { padding: 3px 4px 4px 4px; } + +headerbar.default-decoration windowcontrols > button { min-height: 22px; min-width: 22px; padding: 4px; } + +headerbar.default-decoration windowcontrols > .icon { margin: 7px; } + +window > .titlebar:not(.flat) { box-shadow: 0 1px alpha(@headerbar_shade_color,0.5), 0 2px 4px alpha(@headerbar_shade_color,0.5); } + +window > .titlebar headerbar:not(.flat) { box-shadow: inset 1px 0 alpha(@headerbar_border_color,0.15), inset -1px 0 alpha(@headerbar_border_color,0.15); } + +window > headerbar.titlebar, window > .titlebar headerbar { min-height: 46px; } + +window > headerbar.titlebar > windowhandle > box, window > .titlebar headerbar > windowhandle > box { padding-bottom: 6px; } + +window > headerbar.titlebar.default-decoration, window > .titlebar headerbar.default-decoration { min-height: 36px; } + +window > headerbar.titlebar.default-decoration > windowhandle > box, window > .titlebar headerbar.default-decoration > windowhandle > box { padding-bottom: 3px; } + +toolbarview > .top-bar headerbar, toolbarview > .bottom-bar headerbar, headerbar.flat, window.shortcuts headerbar.titlebar, window.print headerbar.titlebar, window.pagesetup headerbar.titlebar, window.aboutdialog headerbar.titlebar, window.colorchooser headerbar.titlebar, window.appchooser headerbar.titlebar { background: none; box-shadow: none; color: inherit; min-height: 46px; } + +toolbarview > .top-bar headerbar > windowhandle > box, toolbarview > .bottom-bar headerbar > windowhandle > box, headerbar.flat > windowhandle > box, window.shortcuts headerbar.titlebar > windowhandle > box, window.print headerbar.titlebar > windowhandle > box, window.pagesetup headerbar.titlebar > windowhandle > box, window.aboutdialog headerbar.titlebar > windowhandle > box, window.colorchooser headerbar.titlebar > windowhandle > box, window.appchooser headerbar.titlebar > windowhandle > box { padding-bottom: 6px; } + +toolbarview > .top-bar headerbar.default-decoration, toolbarview > .bottom-bar headerbar.default-decoration, headerbar.default-decoration.flat, window.shortcuts headerbar.default-decoration.titlebar, window.print headerbar.default-decoration.titlebar, window.pagesetup headerbar.default-decoration.titlebar, window.aboutdialog headerbar.default-decoration.titlebar, window.colorchooser headerbar.default-decoration.titlebar, window.appchooser headerbar.default-decoration.titlebar { min-height: 36px; } + +toolbarview > .top-bar headerbar.default-decoration > windowhandle > box, toolbarview > .bottom-bar headerbar.default-decoration > windowhandle > box, headerbar.default-decoration.flat > windowhandle > box, window.shortcuts headerbar.default-decoration.titlebar > windowhandle > box, window.print headerbar.default-decoration.titlebar > windowhandle > box, window.pagesetup headerbar.default-decoration.titlebar > windowhandle > box, window.aboutdialog headerbar.default-decoration.titlebar > windowhandle > box, window.colorchooser headerbar.default-decoration.titlebar > windowhandle > box, window.appchooser headerbar.default-decoration.titlebar > windowhandle > box { padding-bottom: 3px; } + +toolbarview > .top-bar headerbar:backdrop, toolbarview > .bottom-bar headerbar:backdrop { transition: none; } + +toolbarview > .top-bar headerbar:backdrop > windowhandle, toolbarview > .bottom-bar headerbar:backdrop > windowhandle { filter: none; transition: none; } + +window.devel toolbarview > .top-bar headerbar > windowhandle, toolbarview > .top-bar window.devel headerbar > windowhandle, window.devel toolbarview > .bottom-bar headerbar > windowhandle, toolbarview > .bottom-bar window.devel headerbar > windowhandle { background-image: none; } + +toolbarview > .top-bar .collapse-spacing headerbar, toolbarview > .bottom-bar .collapse-spacing headerbar, window.shortcuts headerbar.titlebar, window.appchooser headerbar.titlebar { min-height: 40px; } + +toolbarview > .top-bar .collapse-spacing headerbar > windowhandle > box, toolbarview > .bottom-bar .collapse-spacing headerbar > windowhandle > box, window.shortcuts headerbar.titlebar > windowhandle > box, window.appchooser headerbar.titlebar > windowhandle > box { padding-top: 3px; padding-bottom: 3px; } + +toolbarview > .top-bar .collapse-spacing headerbar.default-decoration, toolbarview > .bottom-bar .collapse-spacing headerbar.default-decoration, window.shortcuts headerbar.default-decoration.titlebar, window.appchooser headerbar.default-decoration.titlebar { min-height: 30px; } + +toolbarview > .top-bar .collapse-spacing headerbar.default-decoration > windowhandle > box, toolbarview > .bottom-bar .collapse-spacing headerbar.default-decoration > windowhandle > box, window.shortcuts headerbar.default-decoration.titlebar > windowhandle > box, window.appchooser headerbar.default-decoration.titlebar > windowhandle > box { padding-top: 0px; padding-bottom: 0px; } + +.titlebar:not(headerbar) separator { background-color: alpha(@headerbar_border_color,0.15); } + +/********************* GtkWindowControls * */ +windowcontrols { border-spacing: 3px; } + +windowcontrols > button { min-width: 24px; padding: 5px; box-shadow: none; } + +windowcontrols > button > image { background-color: alpha(currentColor,0.1); border-radius: 100%; padding: 2px; transition: background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +windowcontrols > button, windowcontrols > button:hover, windowcontrols > button:active { background: none; } + +windowcontrols > button:hover > image { background-color: alpha(currentColor,0.15); } + +windowcontrols > button:active > image { background-color: alpha(currentColor,0.3); } + +windowcontrols > .icon { margin: 9px; } + +/****************** AdwWindowTitle * */ +headerbar .title, windowtitle .title { padding-left: 12px; padding-right: 12px; font-weight: bold; } + +headerbar .subtitle, windowtitle .subtitle { font-size: smaller; padding-left: 12px; padding-right: 12px; } + +windowtitle { margin-top: -6px; margin-bottom: -6px; min-height: 12px; } + +window.devel headerbar > windowhandle { background-image: cross-fade(5% -gtk-recolor(url("assets/devel-symbolic.svg")), image(transparent)); background-repeat: repeat-x; } + +window.devel dialog headerbar > windowhandle { background-image: unset; background-repeat: unset; } + +label { caret-color: currentColor; } + +label:disabled { filter: opacity(0.5); } + +.dim-label, scale > value, progressbar > text, row.expander image.expander-row-arrow, row.property > box.header > box.title > .title, row.expander.property box > list > row > box.header > box.title > .title, row label.subtitle, spinbutton > text > placeholder, entry > text > placeholder, headerbar .subtitle, windowtitle .subtitle, label.separator { opacity: 0.55; } + +.accent { color: @accent_color; } + +.success { color: @success_color; } + +.warning { color: @warning_color; } + +.error { color: @error_color; } + +/********************** General Typography * */ +.title-1 { font-weight: 800; font-size: 20pt; } + +.title-2 { font-weight: 800; font-size: 15pt; } + +.title-3 { font-weight: 700; font-size: 15pt; } + +.title-4 { font-weight: 700; font-size: 13pt; } + +.heading, listview > header { font-weight: 700; font-size: 11pt; } + +.body { font-weight: 400; font-size: 11pt; } + +.caption-heading { font-weight: 700; font-size: 9pt; } + +.caption { font-weight: 400; font-size: 9pt; } + +.monospace { font-family: monospace; } + +.numeric, spinbutton, scale > value, progressbar > text { font-feature-settings: "tnum"; } + +/******************* Editable Labels * */ +editablelabel > stack > text { color: @view_fg_color; background-color: @view_bg_color; } + +levelbar:disabled { filter: opacity(0.5); } + +levelbar.horizontal trough > block { min-height: 8px; border-radius: 99px; } + +levelbar.horizontal trough > block.empty, levelbar.horizontal trough > block.full { border-radius: 99px; } + +levelbar.horizontal.discrete > trough > block { min-height: 8px; margin-right: 2px; min-width: 26px; border-radius: 0; } + +levelbar.horizontal.discrete > trough > block:first-child { border-radius: 99px 0 0 99px; } + +levelbar.horizontal.discrete > trough > block:last-child { border-radius: 0 99px 99px 0; margin-right: 0; } + +levelbar.vertical trough > block { min-width: 8px; border-radius: 99px; } + +levelbar.vertical trough > block.empty, levelbar.vertical trough > block.full { border-radius: 99px; } + +levelbar.vertical.discrete > trough > block { min-width: 8px; margin-bottom: 2px; min-height: 26px; border-radius: 0; } + +levelbar.vertical.discrete > trough > block:first-child { border-radius: 99px 99px 0 0; } + +levelbar.vertical.discrete > trough > block:last-child { border-radius: 0 0 99px 99px; margin-bottom: 0; } + +levelbar > trough { padding: 0; } + +levelbar > trough > block.low { background-color: @warning_bg_color; } + +levelbar > trough > block.high, levelbar > trough > block:not(.empty) { background-color: @accent_bg_color; } + +levelbar > trough > block.full { background-color: @success_bg_color; } + +levelbar > trough > block.empty { background-color: alpha(currentColor,0.15); } + +.osd levelbar > trough > block.high, .osd levelbar > trough > block:not(.empty) { background-color: rgba(255, 255, 255, 0.75); } + +.linked:not(.vertical) > button:dir(ltr):not(:first-child), .linked:not(.vertical) > button:dir(rtl):not(:last-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > button:dir(ltr):not(:last-child), .linked:not(.vertical) > button:dir(rtl):not(:first-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical button:not(:first-child) { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical button:not(:last-child) { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > menubutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > menubutton:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > menubutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > menubutton:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical menubutton:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical menubutton:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > dropdown:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > combobox:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > dropdown:dir(rtl):not(:last-child) > button, .linked:not(.vertical) > combobox:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > dropdown:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > combobox:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > dropdown:dir(rtl):not(:first-child) > button, .linked:not(.vertical) > combobox:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical dropdown:not(:first-child) > button, .linked.vertical combobox:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical dropdown:not(:last-child) > button, .linked.vertical combobox:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > colorbutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > colorbutton:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > colorbutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > colorbutton:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical colorbutton:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical colorbutton:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > fontbutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > fontbutton:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > fontbutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > fontbutton:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical fontbutton:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical fontbutton:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > tabbutton:dir(ltr):not(:first-child) > button, .linked:not(.vertical) > tabbutton:dir(rtl):not(:last-child) > button { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > tabbutton:dir(ltr):not(:last-child) > button, .linked:not(.vertical) > tabbutton:dir(rtl):not(:first-child) > button { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical tabbutton:not(:first-child) > button { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical tabbutton:not(:last-child) > button { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > spinbutton:dir(ltr):not(:first-child), .linked:not(.vertical) > spinbutton:dir(rtl):not(:last-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > spinbutton:dir(ltr):not(:last-child), .linked:not(.vertical) > spinbutton:dir(rtl):not(:first-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical spinbutton:not(:first-child) { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical spinbutton:not(:last-child) { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > entry:dir(ltr):not(:first-child), .linked:not(.vertical) > entry:dir(rtl):not(:last-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > entry:dir(ltr):not(:last-child), .linked:not(.vertical) > entry:dir(rtl):not(:first-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical entry:not(:first-child) { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical entry:not(:last-child) { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > combobox:dir(ltr):not(:first-child) > box > button.combo, .linked:not(.vertical) > combobox:dir(rtl):not(:last-child) > box > button.combo { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > combobox:dir(ltr):not(:last-child) > box > button.combo, .linked:not(.vertical) > combobox:dir(rtl):not(:first-child) > box > button.combo { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical combobox:not(:first-child) > box > button.combo { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical combobox:not(:last-child) > box > button.combo { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +.linked:not(.vertical) > appchooserbutton:dir(ltr):not(:first-child) > combobox > box > button.combo, .linked:not(.vertical) > appchooserbutton:dir(rtl):not(:last-child) > combobox > box > button.combo { border-top-left-radius: 0; border-bottom-left-radius: 0; margin-left: -1px; } + +.linked:not(.vertical) > appchooserbutton:dir(ltr):not(:last-child) > combobox > box > button.combo, .linked:not(.vertical) > appchooserbutton:dir(rtl):not(:first-child) > combobox > box > button.combo { border-top-right-radius: 0; border-bottom-right-radius: 0; } + +.linked.vertical appchooserbutton:not(:first-child) > combobox > box > button.combo { border-top-left-radius: 0; border-top-right-radius: 0; margin-top: -1px; } + +.linked.vertical appchooserbutton:not(:last-child) > combobox > box > button.combo { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } + +link, button.link { color: @accent_color; text-decoration: underline; font-weight: inherit; } + +link:visited, button.link:visited { color: mix(@accent_color,@view_fg_color,0.2); } + +link:hover, button.link:hover { color: shade(@accent_color,1.1); } + +link:active, button.link:active { color: @accent_color; } + +link:disabled, button.link:disabled { color: alpha(currentColor,0.5); } + +.osd link, .osd button.link { color: mix(@accent_bg_color,white,0.5); } + +.osd link:visited, .osd button.link:visited { color: mix(@accent_bg_color,white,0.25); } + +.osd link:active, .osd button.link:active { color: mix(@accent_bg_color,white,0.5); } + +link { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +link:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +.osd link:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +button.link > label { text-decoration: underline; } + +listview, list { color: @view_fg_color; background-color: @view_bg_color; background-clip: padding-box; border-color: alpha(currentColor,0.15); } + +listview > row, list > row { padding: 2px; background-clip: padding-box; } + +listview > row.expander, list > row.expander { padding: 0px; } + +listview > row.expander .row-header, list > row.expander .row-header { padding: 2px; } + +listview.horizontal row.separator, listview.separators.horizontal > row:not(.separator), list.horizontal row.separator, list.separators.horizontal > row:not(.separator) { border-left: 1px solid alpha(currentColor,0.15); } + +listview:not(.horizontal) row.separator, listview.separators:not(.horizontal) > row:not(.separator), list:not(.horizontal) row.separator, list.separators:not(.horizontal) > row:not(.separator) { border-bottom: 1px solid alpha(currentColor,0.15); } + +listview > header { padding: 2px; padding-top: 18px; padding-bottom: 6px; } + +row { background-clip: padding-box; } + +row { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +.osd row:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +.osd row.activatable:hover { background-color: alpha(currentColor,0.07); } + +.osd row.activatable:active { background-color: alpha(currentColor,0.16); } + +.osd row.activatable.has-open-popup { background-color: alpha(currentColor,0.07); } + +.osd row.activatable:selected:hover { background-color: alpha(currentColor,0.13); } + +.osd row.activatable:selected:active { background-color: alpha(currentColor,0.19); } + +.osd row.activatable.has-open-popup:selected { background-color: alpha(currentColor,0.13); } + +.osd row:selected { background-color: alpha(currentColor,0.1); } + +row.activatable:hover { background-color: alpha(currentColor,0.04); } + +row.activatable:active { background-color: alpha(currentColor,0.08); } + +row.activatable.has-open-popup { background-color: alpha(currentColor,0.04); } + +row.activatable:selected:hover { background-color: alpha(@accent_bg_color,0.32); } + +row.activatable:selected:active { background-color: alpha(@accent_bg_color,0.39); } + +row.activatable.has-open-popup:selected { background-color: alpha(@accent_bg_color,0.32); } + +row:selected { background-color: alpha(@accent_bg_color,0.25); } + +/******************************************************* Rich Lists * Large list usually containing lots of widgets * https://gitlab.gnome.org/GNOME/gtk/-/issues/3073 * */ +.rich-list { /* rich lists usually containing other widgets than just labels/text */ } + +.rich-list > row { padding: 8px 12px; min-height: 32px; /* should be tall even when only containing a label */ } + +.rich-list > row > box { border-spacing: 12px; } + +.rich-list > header { padding-left: 12px; padding-right: 12px; } + +/**************** AdwActionRow * */ +row label.subtitle { font-size: smaller; } + +row > box.header { margin-left: 12px; margin-right: 12px; border-spacing: 6px; min-height: 50px; } + +row > box.header > .icon:disabled { filter: opacity(0.5); } + +row > box.header > box.title { margin-top: 6px; margin-bottom: 6px; border-spacing: 3px; padding: 0; } + +row > box.header > box.title, row > box.header > box.title > .title, row > box.header > box.title > .subtitle { padding: 0; font-weight: inherit; } + +row > box.header > .prefixes, row > box.header > .suffixes { border-spacing: 6px; } + +row > box.header > .icon:dir(ltr), row > box.header > .prefixes:dir(ltr) { margin-right: 6px; } + +row > box.header > .icon:dir(rtl), row > box.header > .prefixes:dir(rtl) { margin-left: 6px; } + +row.property > box.header > box.title > .title, row.expander.property box > list > row > box.header > box.title > .title { font-size: smaller; } + +row.property > box.header > box.title > .subtitle, row.expander.property box > list > row > box.header > box.title > .subtitle { font-size: inherit; opacity: 1; } + +row.property.monospace, row.expander.property box > list > row.monospace { font-family: inherit; } + +row.property.monospace > box.header > box.title > .subtitle, row.expander.property box > list > row.monospace > box.header > box.title > .subtitle { font-family: monospace; } + +/****************************** AdwEntryRow and AdwSpinRow * */ +row.entry.activatable.focused:not(:selected):hover, row.entry.activatable.focused:not(:selected):active { background-color: transparent; } + +row.entry:disabled text { opacity: 0.5; } + +row.entry:disabled .dim-label, row.entry:disabled scale > value, row.entry:disabled progressbar > text, row.entry:disabled row.expander image.expander-row-arrow, row.expander row.entry:disabled image.expander-row-arrow, row.entry:disabled spinbutton > text > placeholder, row.entry:disabled entry > text > placeholder, row.entry:disabled label.separator, row.entry:disabled row.property > box.header > box.title > .title, row.entry:disabled row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.entry:disabled box > list > row > box.header > box.title > .title, row.entry:disabled .subtitle { opacity: 1; } + +row.entry .edit-icon, row.entry .indicator { min-width: 24px; min-height: 24px; padding: 5px; } + +row.entry .edit-icon:disabled { opacity: 0.3; } + +row.entry .indicator { opacity: 0.3; } + +row.entry.monospace { font-family: inherit; } + +row.entry.monospace text { font-family: monospace; } + +row.spin.activatable.focused:not(:selected):hover, row.spin.activatable.focused:not(:selected):active { background-color: transparent; } + +row.spin spinbutton { background: none; border-spacing: 6px; box-shadow: none; } + +row.spin spinbutton, row.spin spinbutton:focus { outline: none; } + +row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child, row.spin spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, row.spin spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child { min-width: 30px; min-height: 30px; margin: 10px 2px; border: none; } + +row.spin:disabled spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:disabled, row.spin:disabled spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(ltr):last-child:disabled, row.spin:disabled spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child:dir(rtl):first-child:disabled, row.spin:disabled spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):disabled, row.spin:disabled spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child:disabled, row.spin:disabled spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child:disabled { filter: none; } + +row.entry, row.spin { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.entry.focused, row.spin.focused { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -1px; } + +row.entry.activatable.focused:not(:selected):hover, row.entry.activatable.focused:not(:selected):active, row.spin.activatable.focused:not(:selected):hover, row.spin.activatable.focused:not(:selected):active { background-color: transparent; } + +row.entry.error, row.spin.error { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.entry.error.focused, row.spin.error.focused { outline-color: alpha(currentColor,0.5); outline-width: 2px; outline-offset: -1px; } + +row.entry.error text > selection:focus-within, row.spin.error text > selection:focus-within { background-color: alpha(@error_color,0.2); } + +row.entry.error text > cursor-handle > contents, row.spin.error text > cursor-handle > contents { background-color: currentColor; } + +row.entry.error .dim-label, row.entry.error scale > value, row.entry.error progressbar > text, row.entry.error row.expander image.expander-row-arrow, row.expander row.entry.error image.expander-row-arrow, row.entry.error spinbutton > text > placeholder, row.entry.error entry > text > placeholder, row.entry.error label.separator, row.entry.error row.property > box.header > box.title > .title, row.entry.error row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.entry.error box > list > row > box.header > box.title > .title, row.entry.error .subtitle, row.spin.error .dim-label, row.spin.error scale > value, row.spin.error progressbar > text, row.spin.error row.expander image.expander-row-arrow, row.expander row.spin.error image.expander-row-arrow, row.spin.error spinbutton > text > placeholder, row.spin.error entry > text > placeholder, row.spin.error label.separator, row.spin.error row.property > box.header > box.title > .title, row.spin.error row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.spin.error box > list > row > box.header > box.title > .title, row.spin.error .subtitle { opacity: 1; } + +row.entry.error .suggested-action, row.spin.error .suggested-action { background-color: @error_bg_color; color: @error_fg_color; } + +row.entry.warning, row.spin.warning { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.entry.warning.focused, row.spin.warning.focused { outline-color: alpha(currentColor,0.5); outline-width: 2px; outline-offset: -1px; } + +row.entry.warning text > selection:focus-within, row.spin.warning text > selection:focus-within { background-color: alpha(@warning_color,0.2); } + +row.entry.warning text > cursor-handle > contents, row.spin.warning text > cursor-handle > contents { background-color: currentColor; } + +row.entry.warning .dim-label, row.entry.warning scale > value, row.entry.warning progressbar > text, row.entry.warning row.expander image.expander-row-arrow, row.expander row.entry.warning image.expander-row-arrow, row.entry.warning spinbutton > text > placeholder, row.entry.warning entry > text > placeholder, row.entry.warning label.separator, row.entry.warning row.property > box.header > box.title > .title, row.entry.warning row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.entry.warning box > list > row > box.header > box.title > .title, row.entry.warning .subtitle, row.spin.warning .dim-label, row.spin.warning scale > value, row.spin.warning progressbar > text, row.spin.warning row.expander image.expander-row-arrow, row.expander row.spin.warning image.expander-row-arrow, row.spin.warning spinbutton > text > placeholder, row.spin.warning entry > text > placeholder, row.spin.warning label.separator, row.spin.warning row.property > box.header > box.title > .title, row.spin.warning row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.spin.warning box > list > row > box.header > box.title > .title, row.spin.warning .subtitle { opacity: 1; } + +row.entry.warning .suggested-action, row.spin.warning .suggested-action { background-color: @warning_bg_color; color: @warning_fg_color; } + +row.entry.success, row.spin.success { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.entry.success.focused, row.spin.success.focused { outline-color: alpha(currentColor,0.5); outline-width: 2px; outline-offset: -1px; } + +row.entry.success text > selection:focus-within, row.spin.success text > selection:focus-within { background-color: alpha(@success_color,0.2); } + +row.entry.success text > cursor-handle > contents, row.spin.success text > cursor-handle > contents { background-color: currentColor; } + +row.entry.success .dim-label, row.entry.success scale > value, row.entry.success progressbar > text, row.entry.success row.expander image.expander-row-arrow, row.expander row.entry.success image.expander-row-arrow, row.entry.success spinbutton > text > placeholder, row.entry.success entry > text > placeholder, row.entry.success label.separator, row.entry.success row.property > box.header > box.title > .title, row.entry.success row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.entry.success box > list > row > box.header > box.title > .title, row.entry.success .subtitle, row.spin.success .dim-label, row.spin.success scale > value, row.spin.success progressbar > text, row.spin.success row.expander image.expander-row-arrow, row.expander row.spin.success image.expander-row-arrow, row.spin.success spinbutton > text > placeholder, row.spin.success entry > text > placeholder, row.spin.success label.separator, row.spin.success row.property > box.header > box.title > .title, row.spin.success row.expander.property box > list > row > box.header > box.title > .title, row.expander.property row.spin.success box > list > row > box.header > box.title > .title, row.spin.success .subtitle { opacity: 1; } + +row.entry.success .suggested-action, row.spin.success .suggested-action { background-color: @success_bg_color; color: @success_fg_color; } + +/*************** AdwComboRow * */ +row.combo image.dropdown-arrow:disabled { filter: opacity(0.5); } + +row.combo listview.inline { background: none; border: none; box-shadow: none; color: inherit; } + +row.combo listview.inline, row.combo listview.inline:disabled { background: none; color: inherit; } + +row.combo popover > contents { min-width: 120px; } + +row.combo popover > contents .combo-searchbar { margin: 6px; } + +row.combo popover > contents .combo-searchbar + scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(@popover_shade_color,0.75); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +/****************** AdwExpanderRow * */ +list.boxed-list > row, list.content > row, list.boxed-list > row.expander row.header, list.content > row.expander row.header, row.expander list.nested > row { border-bottom: 1px solid @card_shade_color; } + +list.boxed-list > row, list.content > row, list.boxed-list > row.expander row.header, list.content > row.expander row.header, row.expander list.nested > row { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), border-radius 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +list.boxed-list > row:focus:focus-visible, list.content > row:focus:focus-visible, list.boxed-list > row.expander row.header:focus:focus-visible, list.content > row.expander row.header:focus:focus-visible, row.expander list.nested > row:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -1px; } + +.osd list.boxed-list > row:focus:focus-visible, .osd list.content > row:focus:focus-visible, .osd list.boxed-list > row.expander row.header:focus:focus-visible, list.boxed-list > row.expander .osd row.header:focus:focus-visible, .osd list.content > row.expander row.header:focus:focus-visible, list.content > row.expander .osd row.header:focus:focus-visible, .osd row.expander list.nested > row:focus:focus-visible, row.expander .osd list.nested > row:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +list.boxed-list > row.activatable:not(:selected):hover, list.content > row.activatable:not(:selected):hover, list.boxed-list > row.expander row.header.activatable:not(:selected):hover, list.content > row.expander row.header.activatable:not(:selected):hover, row.expander list.nested > row.activatable:not(:selected):hover { background-color: alpha(currentColor,0.03); } + +list.boxed-list > row.activatable:not(:selected):active, list.content > row.activatable:not(:selected):active, list.boxed-list > row.expander row.header.activatable:not(:selected):active, list.content > row.expander row.header.activatable:not(:selected):active, row.expander list.nested > row.activatable:not(:selected):active { background-color: alpha(currentColor,0.08); } + +list.boxed-list > row.activatable.has-open-popup:not(:selected), list.content > row.activatable.has-open-popup:not(:selected), list.boxed-list > row.expander row.header.activatable.has-open-popup:not(:selected), list.content > row.expander row.header.activatable.has-open-popup:not(:selected), row.expander list.nested > row.activatable.has-open-popup:not(:selected) { background-color: alpha(currentColor,0.03); } + +row.expander { background: none; padding: 0px; } + +row.expander > box > list { background: none; color: inherit; } + +row.expander list.nested { background-color: alpha(@card_shade_color,0.5); color: inherit; } + +row.expander image.expander-row-arrow { transition: -gtk-icon-transform 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +row.expander image.expander-row-arrow:dir(ltr) { margin-left: 3px; } + +row.expander image.expander-row-arrow:dir(rtl) { margin-right: 3px; } + +row.expander image.expander-row-arrow:dir(ltr) { -gtk-icon-transform: rotate(0.5turn); } + +row.expander image.expander-row-arrow:dir(rtl) { -gtk-icon-transform: rotate(-0.5turn); } + +row.expander image.expander-row-arrow:disabled { filter: opacity(0.5); } + +row.expander:checked image.expander-row-arrow { -gtk-icon-transform: rotate(0turn); opacity: 1; } + +row.expander:checked image.expander-row-arrow:not(:disabled) { color: @accent_color; } + +.osd row.expander:checked image.expander-row-arrow:not(:disabled) { color: inherit; } + +/***************** Boxed Lists * */ +list.boxed-list > row.expander, list.content > row.expander { border: none; } + +list.boxed-list > row:first-child, list.content > row:first-child, list.boxed-list > row.expander:first-child row.header, list.content > row.expander:first-child row.header { border-top-left-radius: 12px; border-top-right-radius: 12px; } + +list.boxed-list > row:last-child, list.content > row:last-child, list.boxed-list > row.expander:last-child:not(:checked), list.boxed-list > row.expander:last-child:not(:checked) row.header, list.content > row.expander:last-child:not(:checked) row.header, list.boxed-list > row.expander:last-child:checked list.nested, list.content > row.expander:last-child:checked list.nested, list.boxed-list > row.expander:last-child:checked list.nested > row:last-child, list.content > row.expander:last-child:checked list.nested > row:last-child { border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; border-bottom-width: 0; } + +popover.menu > contents { min-width: 120px; } + +popover.menu scrollbar.vertical > range > trough > slider { min-height: 30px; } + +popover.menu box.inline-buttons { padding: 0 12px; } + +popover.menu box.inline-buttons button.image-button.model { min-height: 32px; min-width: 32px; padding: 0; border: none; outline: none; transition: none; } + +popover.menu box.inline-buttons button.image-button.model:selected { background-color: alpha(currentColor,0.1); } + +popover.menu box.inline-buttons button.image-button.model:selected:active { background-color: alpha(currentColor,0.19); } + +popover.menu box.circular-buttons { padding: 12px 12px 6px; } + +popover.menu box.circular-buttons button.circular.image-button.model { outline: none; padding: 11px; box-shadow: inset 0 0 0 1px alpha(currentColor,0.15); } + +popover.menu box.circular-buttons button.circular.image-button.model:selected { background-color: alpha(currentColor,0.13); box-shadow: none; } + +popover.menu box.circular-buttons button.circular.image-button.model:selected:active { background-color: alpha(currentColor,0.19); } + +popover.menu > contents { padding: 0; } + +popover.menu > contents > stack > box, popover.menu > contents > scrolledwindow > viewport > stack > box { padding: 6px; } + +popover.menu separator { margin: 6px 0; } + +popover.menu list separator { margin: 0; } + +popover.menu accelerator { color: alpha(currentColor,0.55); } + +popover.menu accelerator:dir(ltr) { margin-left: 12px; } + +popover.menu accelerator:dir(rtl) { margin-right: 12px; } + +popover.menu check, popover.menu radio { min-width: 14px; min-height: 14px; -gtk-icon-size: 14px; padding: 2px; } + +popover.menu check, popover.menu check:hover:checked, popover.menu check:hover:indeterminate, popover.menu check:hover:not(:checked):not(:indeterminate), popover.menu check:active:checked, popover.menu check:active:indeterminate, popover.menu check:active:not(:checked):not(:indeterminate), popover.menu radio, popover.menu radio:hover:checked, popover.menu radio:hover:indeterminate, popover.menu radio:hover:not(:checked):not(:indeterminate), popover.menu radio:active:checked, popover.menu radio:active:indeterminate, popover.menu radio:active:not(:checked):not(:indeterminate) { background: none; box-shadow: none; color: inherit; } + +.osd popover.menu check, .osd popover.menu radio { background: none; color: inherit; } + +popover.menu radio { padding: 1px; border: 1px solid alpha(currentColor,0.3); } + +popover.menu check.left, popover.menu radio.left, popover.menu arrow.left { margin-left: -2px; margin-right: 6px; } + +popover.menu check.right, popover.menu radio.right, popover.menu arrow.right { margin-left: 6px; margin-right: -2px; } + +popover.menu modelbutton { min-height: 32px; min-width: 40px; padding: 0 12px; border-radius: 6px; } + +popover.menu modelbutton:hover, popover.menu modelbutton:selected { background-color: alpha(currentColor,0.1); } + +popover.menu modelbutton:active { background-color: alpha(currentColor,0.19); } + +popover.menu modelbutton arrow { background: none; min-width: 16px; min-height: 16px; opacity: 0.3; } + +popover.menu modelbutton arrow:hover { background: none; } + +popover.menu modelbutton arrow:disabled { filter: opacity(0.5); } + +popover.menu modelbutton arrow.left { -gtk-icon-source: -gtk-icontheme("go-previous-symbolic"); } + +popover.menu modelbutton arrow.right { -gtk-icon-source: -gtk-icontheme("go-next-symbolic"); } + +popover.menu label.title { font-weight: bold; padding: 4px 32px; } + +popover.menu list, popover.menu listview { background: none; color: inherit; } + +popover.menu list > row, popover.menu listview > row { border-radius: 6px; padding: 0 12px; min-height: 32px; min-width: 40px; } + +popover.menu list > row:selected, popover.menu listview > row:selected { background: none; } + +popover.menu list > row:hover, popover.menu list > row.activatable:hover:selected, popover.menu listview > row:hover, popover.menu listview > row.activatable:hover:selected { background-color: alpha(currentColor,0.1); } + +popover.menu list > row:active, popover.menu list > row.activatable:active:selected, popover.menu listview > row:active, popover.menu listview > row.activatable:active:selected { background-color: alpha(currentColor,0.19); } + +popover.menu list > row.has-open-popup, popover.menu list > row.has-open-popup.activatable:selected, popover.menu listview > row.has-open-popup, popover.menu listview > row.has-open-popup.activatable:selected { background-color: alpha(currentColor,0.1); } + +popover.menu list > row > box, popover.menu listview > row > box { border-spacing: 6px; } + +popover.menu contents > list, popover.menu contents > listview, popover.menu scrolledwindow > viewport > list, popover.menu scrolledwindow > listview { padding: 6px 0; } + +popover.menu contents > list > row, popover.menu contents > listview > row, popover.menu scrolledwindow > viewport > list > row, popover.menu scrolledwindow > listview > row { margin: 0 6px; padding: 9px 12px; min-height: 0; } + +menubar { box-shadow: inset 0 -1px alpha(currentColor,0.15); padding-bottom: 1px; } + +menubar > item { min-height: 16px; padding: 4px 8px; border-radius: 6px; } + +menubar > item:selected { background-color: alpha(currentColor,0.1); } + +menubar > item popover.menu popover.menu { padding: 0 0 4px 0; } + +menubar > item popover.menu popover.menu > contents { margin: 0; border-radius: 12px; } + +toolbarview > .top-bar menubar, toolbarview > .bottom-bar menubar { box-shadow: none; padding-bottom: 0; } + +/******************** GtkMessageDialog * */ +window.dialog.message .titlebar { min-height: 20px; background: none; box-shadow: none; border-style: none; border-top-left-radius: 7px; border-top-right-radius: 7px; } + +window.dialog.message box.dialog-vbox.vertical { margin-top: 6px; border-spacing: 24px; } + +window.dialog.message box.dialog-vbox.vertical > box > box > box > label.title { font-weight: 800; font-size: 15pt; } + +window.dialog.message.csd { border-bottom-left-radius: 13px; border-bottom-right-radius: 13px; } + +window.dialog.message.csd .dialog-action-area { border-top: 1px solid alpha(currentColor,0.15); margin: 0; border-spacing: 0; } + +window.dialog.message.csd .dialog-action-area > button { padding: 10px 14px; border-radius: 0; border: none; background-clip: padding-box; border-left: 1px solid alpha(currentColor,0.15); } + +window.dialog.message.csd .dialog-action-area > button:first-child { border-bottom-left-radius: 13px; border-left: none; } + +window.dialog.message.csd .dialog-action-area > button:last-child { border-bottom-right-radius: 13px; } + +window.dialog.message.csd .dialog-action-area > button.suggested-action { color: @accent_color; } + +window.dialog.message.csd .dialog-action-area > button.destructive-action { color: @destructive_color; } + +/******************** AdwMessageDialog * */ +window.messagedialog, dialog-host > dialog.alert sheet, window.dialog-window.alert { background-color: @dialog_bg_color; color: @dialog_fg_color; } + +window.messagedialog { outline: none; } + +dialog-host > dialog.alert.floating sheet, window.dialog-window.alert { border-radius: 13px; outline: none; } + +window.messagedialog .message-area, dialog.alert .message-area { padding: 24px 30px; border-spacing: 24px; } + +window.messagedialog .message-area.has-heading.has-body, dialog.alert .message-area.has-heading.has-body { border-spacing: 10px; } + +window.messagedialog .response-area > button, dialog.alert .response-area > button { padding: 10px 14px; border-radius: 0; } + +window.messagedialog .response-area > button.suggested, dialog.alert .response-area > button.suggested { color: @accent_color; } + +window.messagedialog .response-area > button.destructive, dialog.alert .response-area > button.destructive { color: @destructive_color; } + +window.messagedialog .response-area:not(.compact) > button, dialog.alert .response-area:not(.compact) > button { margin-top: -1px; margin-right: -1px; margin-left: -1px; } + +window.messagedialog .response-area:not(.compact) > button:first-child:dir(ltr), window.messagedialog .response-area:not(.compact) > button:last-child:dir(rtl), dialog.alert .response-area:not(.compact) > button:first-child:dir(ltr), dialog.alert .response-area:not(.compact) > button:last-child:dir(rtl) { margin-left: 0; } + +window.messagedialog .response-area:not(.compact) > button:last-child:dir(ltr), window.messagedialog .response-area:not(.compact) > button:first-child:dir(rtl), dialog.alert .response-area:not(.compact) > button:last-child:dir(ltr), dialog.alert .response-area:not(.compact) > button:first-child:dir(rtl) { margin-right: 0; } + +window.messagedialog .response-area.compact > button, dialog.alert .response-area.compact > button { margin-top: -1px; margin-bottom: -1px; } + +window.messagedialog .response-area.compact > button:first-child, dialog.alert .response-area.compact > button:first-child { margin-bottom: 0; } + +window.messagedialog .response-area:not(.compact) > button:first-child:dir(ltr), window.messagedialog .response-area:not(.compact) > button:last-child:dir(rtl), dialog.alert.floating .response-area:not(.compact) > button:first-child:dir(ltr), dialog.alert.floating .response-area:not(.compact) > button:last-child:dir(rtl) { border-bottom-left-radius: 13px; } + +window.messagedialog .response-area:not(.compact) > button:last-child:dir(ltr), window.messagedialog .response-area:not(.compact) > button:first-child:dir(rtl), dialog.alert.floating .response-area:not(.compact) > button:last-child:dir(ltr), dialog.alert.floating .response-area:not(.compact) > button:first-child:dir(rtl) { border-bottom-right-radius: 13px; } + +window.messagedialog .response-area.compact > button:first-child, dialog.alert.floating .response-area.compact > button:first-child { border-bottom-left-radius: 13px; border-bottom-right-radius: 13px; } + +/********** Frames * */ +frame, .frame { border: 1px solid alpha(currentColor,0.15); } + +frame { border-radius: 12px; } + +frame > label { margin: 4px; } + +/************** Separators * */ +separator { background: alpha(currentColor,0.15); min-width: 1px; min-height: 1px; } + +separator.spacer { background: none; } + +separator.spacer.horizontal { min-width: 12px; } + +separator.spacer.vertical { min-height: 12px; } + +/********************* App Notifications * */ +.app-notification { padding: 10px; border-spacing: 10px; border-radius: 0 0 12px 12px; background-color: rgba(0, 0, 0, 0.7); background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), transparent 2px); background-clip: padding-box; } + +.app-notification border { border: none; } + +/********** Toasts * */ +toast { margin: 12px; margin-bottom: 24px; border-radius: 150px; border-spacing: 6px; padding: 6px; } + +toast:dir(ltr) { padding-left: 12px; } + +toast:dir(rtl) { padding-right: 12px; } + +toast > widget { margin: 0 6px; } + +/************** GtkVideo * */ +video { background: black; } + +video image.osd { min-width: 64px; min-height: 64px; border-radius: 32px; } + +/****************** AdwAboutWindow * */ +window.about .main-page > viewport > clamp > box, dialog.about .main-page > viewport > clamp > box { margin: 12px; border-spacing: 6px; } + +window.about .main-page > viewport > clamp > box > box, dialog.about .main-page > viewport > clamp > box > box { margin-top: 18px; border-spacing: 18px; margin-bottom: 6px; } + +window.about .main-page .app-version, dialog.about .main-page .app-version { padding: 3px 18px; color: @accent_color; border-radius: 999px; margin-top: 3px; } + +window.about .subpage > viewport > clamp > box, dialog.about .subpage > viewport > clamp > box { margin: 18px 12px; border-spacing: 18px; } + +window.about .subpage > clamp > textview, dialog.about .subpage > clamp > textview { background: none; color: inherit; } + +/***************** AdwStatusPage * */ +statuspage > scrolledwindow > viewport > box { margin: 36px 12px; border-spacing: 36px; } + +statuspage > scrolledwindow > viewport > box > clamp > box { border-spacing: 12px; } + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon { -gtk-icon-size: 128px; color: alpha(currentColor,0.55); } + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon:disabled { opacity: 0.5; } + +statuspage > scrolledwindow > viewport > box > clamp > box > .icon:not(:last-child) { margin-bottom: 24px; } + +statuspage.compact > scrolledwindow > viewport > box { margin: 24px 12px; border-spacing: 24px; } + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .icon { -gtk-icon-size: 96px; } + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .icon:not(:last-child) { margin-bottom: 12px; } + +statuspage.compact > scrolledwindow > viewport > box > clamp > box > .title { font-size: 18pt; } + +/* Cards */ +shortcut > .keycap, list.boxed-list, list.content, .card { background-color: @card_bg_color; color: @card_fg_color; border-radius: 12px; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.03), 0 1px 3px 1px rgba(0, 0, 0, 0.07), 0 2px 6px 2px rgba(0, 0, 0, 0.03); } + +.osd shortcut > .keycap, .osd list.boxed-list, .osd list.content, shortcut > .osd.keycap, list.osd.boxed-list, list.osd.content, .osd .card, .card.osd { background-color: alpha(currentColor,0.1); color: inherit; box-shadow: none; } + +.card { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +.card:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -1px; } + +.osd .card:focus:focus-visible, .card.osd:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +.card.activatable { transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +.card.activatable:hover { background-image: image(alpha(currentColor,0.03)); } + +.card.activatable:active { background-image: image(alpha(currentColor,0.08)); } + +/* Transition shadows */ +flap > dimming, leaflet > dimming, navigation-view > dimming, overlay-split-view > dimming { background: @shade_color; } + +flap > shadow, leaflet > shadow, navigation-view > shadow, overlay-split-view > shadow { min-width: 56px; min-height: 56px; } + +flap > shadow.left, leaflet > shadow.left, navigation-view > shadow.left, overlay-split-view > shadow.left { background-image: linear-gradient(to right, alpha(@shade_color,0.7), alpha(@shade_color,0.14) 40px, alpha(@shade_color,0) 56px), linear-gradient(to right, alpha(@shade_color,0.4), alpha(@shade_color,0.14) 7px, alpha(@shade_color,0) 24px); } + +flap > shadow.right, leaflet > shadow.right, navigation-view > shadow.right, overlay-split-view > shadow.right { background-image: linear-gradient(to left, alpha(@shade_color,0.7), alpha(@shade_color,0.14) 40px, alpha(@shade_color,0) 56px), linear-gradient(to left, alpha(@shade_color,0.4), alpha(@shade_color,0.14) 7px, alpha(@shade_color,0) 24px); } + +flap > shadow.up, leaflet > shadow.up, navigation-view > shadow.up, overlay-split-view > shadow.up { background-image: linear-gradient(to bottom, alpha(@shade_color,0.7), alpha(@shade_color,0.14) 40px, alpha(@shade_color,0) 56px), linear-gradient(to bottom, alpha(@shade_color,0.4), alpha(@shade_color,0.14) 7px, alpha(@shade_color,0) 24px); } + +flap > shadow.down, leaflet > shadow.down, navigation-view > shadow.down, overlay-split-view > shadow.down { background-image: linear-gradient(to top, alpha(@shade_color,0.7), alpha(@shade_color,0.14) 40px, alpha(@shade_color,0) 56px), linear-gradient(to top, alpha(@shade_color,0.4), alpha(@shade_color,0.14) 7px, alpha(@shade_color,0) 24px); } + +notebook > header > tabs > tab:checked { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +notebook:focus:focus-visible > header > tabs > tab:checked { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +notebook > header { padding: 1px; border-color: alpha(currentColor,0.15); border-width: 1px; background-clip: padding-box; } + +notebook > header > tabs { margin: -1px; } + +notebook > header.top { border-bottom-style: solid; } + +notebook > header.top > tabs { margin-bottom: -2px; } + +notebook > header.top > tabs > tab:hover { box-shadow: inset 0 -4px alpha(currentColor,0.15); } + +notebook > header.top > tabs > tab:checked { box-shadow: inset 0 -4px @accent_bg_color; } + +notebook > header.bottom { border-top-style: solid; } + +notebook > header.bottom > tabs { margin-top: -2px; } + +notebook > header.bottom > tabs > tab:hover { box-shadow: inset 0 4px alpha(currentColor,0.15); } + +notebook > header.bottom > tabs > tab:checked { box-shadow: inset 0 4px @accent_bg_color; } + +notebook > header.left { border-right-style: solid; } + +notebook > header.left > tabs { margin-right: -2px; } + +notebook > header.left > tabs > tab:hover { box-shadow: inset -4px 0 alpha(currentColor,0.15); } + +notebook > header.left > tabs > tab:checked { box-shadow: inset -4px 0 @accent_bg_color; } + +notebook > header.right { border-left-style: solid; } + +notebook > header.right > tabs { margin-left: -2px; } + +notebook > header.right > tabs > tab:hover { box-shadow: inset 4px 0 alpha(currentColor,0.15); } + +notebook > header.right > tabs > tab:checked { box-shadow: inset 4px 0 @accent_bg_color; } + +notebook > header.top > tabs > arrow { border-top-style: none; } + +notebook > header.bottom > tabs > arrow { border-bottom-style: none; } + +notebook > header.top > tabs > arrow, notebook > header.bottom > tabs > arrow { margin-left: -5px; margin-right: -5px; padding-left: 4px; padding-right: 4px; } + +notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down { -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); } + +notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); } + +notebook > header.left > tabs > arrow { border-left-style: none; } + +notebook > header.right > tabs > arrow { border-right-style: none; } + +notebook > header.left > tabs > arrow, notebook > header.right > tabs > arrow { margin-top: -5px; margin-bottom: -5px; padding-top: 4px; padding-bottom: 4px; } + +notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down { -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); } + +notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up { -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); } + +notebook > header > tabs > arrow { min-height: 16px; min-width: 16px; border-radius: 0; } + +notebook > header > tabs > arrow:hover:not(:active) { box-shadow: none; } + +notebook > header > tabs > tab { transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); min-height: 30px; min-width: 30px; padding: 3px 12px; font-weight: normal; } + +notebook > header > tabs > tab:hover, notebook > header > tabs > tab:active { background-color: alpha(currentColor,0.07); } + +notebook > header > tabs > tab:not(:checked) { outline-color: transparent; } + +notebook > header > tabs > tab:disabled { filter: opacity(0.5); } + +notebook > header > tabs > tab:disabled label, notebook > header > tabs > tab:disabled button { filter: none; } + +notebook > header > tabs > tab button.flat { color: alpha(currentColor,0.3); padding: 0; margin-top: 4px; margin-bottom: 4px; min-width: 20px; min-height: 20px; } + +notebook > header > tabs > tab button.flat:hover, notebook > header > tabs > tab button.flat:active { color: currentColor; } + +notebook > header > tabs > tab button.flat:last-child { margin-left: 4px; margin-right: -4px; } + +notebook > header > tabs > tab button.flat:first-child { margin-left: -4px; margin-right: 4px; } + +notebook > header.top > tabs, notebook > header.bottom > tabs { padding-left: 4px; padding-right: 4px; } + +notebook > header.top > tabs:not(:only-child), notebook > header.bottom > tabs:not(:only-child) { margin-left: 3px; margin-right: 3px; } + +notebook > header.top > tabs:not(:only-child):first-child, notebook > header.bottom > tabs:not(:only-child):first-child { margin-left: -1px; } + +notebook > header.top > tabs:not(:only-child):last-child, notebook > header.bottom > tabs:not(:only-child):last-child { margin-right: -1px; } + +notebook > header.top > tabs > tab, notebook > header.bottom > tabs > tab { margin-left: 4px; margin-right: 4px; } + +notebook > header.left > tabs, notebook > header.right > tabs { padding-top: 4px; padding-bottom: 4px; } + +notebook > header.left > tabs:not(:only-child), notebook > header.right > tabs:not(:only-child) { margin-top: 3px; margin-bottom: 3px; } + +notebook > header.left > tabs:not(:only-child):first-child, notebook > header.right > tabs:not(:only-child):first-child { margin-top: -1px; } + +notebook > header.left > tabs:not(:only-child):last-child, notebook > header.right > tabs:not(:only-child):last-child { margin-bottom: -1px; } + +notebook > header.left > tabs > tab, notebook > header.right > tabs > tab { margin-top: 4px; margin-bottom: 4px; } + +notebook > header.top > tabs > tab { padding-bottom: 4px; } + +notebook > header.bottom > tabs > tab { padding-top: 4px; } + +notebook > stack:not(:only-child) { background-color: @view_bg_color; } + +paned > separator { min-width: 1px; min-height: 1px; background: none; background-size: 1px 1px; } + +paned > separator.wide { min-width: 5px; min-height: 5px; } + +paned.horizontal > separator:dir(ltr) { margin: 0 -8px 0 0; padding: 0 8px 0 0; box-shadow: inset 1px 0 alpha(currentColor,0.15); } + +paned.horizontal > separator:dir(rtl) { margin: 0 0 0 -8px; padding: 0 0 0 8px; box-shadow: inset -1px 0 alpha(currentColor,0.15); } + +paned.horizontal > separator.wide { margin: 0; padding: 0; box-shadow: inset 1px 0 alpha(currentColor,0.15), inset -1px 0 alpha(currentColor,0.15); } + +paned.vertical > separator { margin: 0 0 -8px 0; padding: 0 0 8px 0; box-shadow: inset 0 1px alpha(currentColor,0.15); } + +paned.vertical > separator.wide { margin: 0; padding: 0; box-shadow: inset 0 1px alpha(currentColor,0.15), inset 0 -1px alpha(currentColor,0.15); } + +toolbarview.undershoot-top popover scrolledwindow undershoot.top, toolbarview.undershoot-bottom popover scrolledwindow undershoot.bottom { background: none; box-shadow: none; } + +popover.background { background-color: transparent; font: initial; } + +popover > arrow, popover > contents { background-color: @popover_bg_color; color: @popover_fg_color; background-clip: padding-box; border: 1px solid rgba(0, 0, 0, 0.14); box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05); } + +popover > contents { padding: 8px; border-radius: 12px; } + +popover > contents > list, popover > contents > .view, window.print popover > contents > .dialog-action-box, popover > contents > toolbar { border-style: none; background-color: transparent; } + +.osd popover, popover.touch-selection, popover.magnifier { background-color: transparent; } + +.osd popover > arrow, .osd popover > contents, popover.touch-selection > arrow, popover.touch-selection > contents, popover.magnifier > arrow, popover.magnifier > contents { border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: none; } + +popover toolbarview.undershoot-top scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(@popover_shade_color,0.75); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(@popover_shade_color,0.75); background: linear-gradient(to top, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-top > undershoot.top { box-shadow: inset 0 1px alpha(@popover_shade_color,0.75); background: linear-gradient(to bottom, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-bottom > undershoot.bottom { box-shadow: inset 0 -1px alpha(@popover_shade_color,0.75); background: linear-gradient(to top, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { box-shadow: inset 1px 0 alpha(@popover_shade_color,0.75); background: linear-gradient(to right, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { box-shadow: inset -1px 0 alpha(@popover_shade_color,0.75); background: linear-gradient(to left, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { box-shadow: inset -1px 0 alpha(@popover_shade_color,0.75); background: linear-gradient(to left, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { box-shadow: inset 1px 0 alpha(@popover_shade_color,0.75); background: linear-gradient(to right, alpha(@popover_shade_color,0.75), transparent 4px); } + +popover flap > dimming, popover leaflet > dimming, popover navigation-view > dimming, popover overlay-split-view > dimming { background: @popover_shade_color; } + +popover flap > shadow, popover leaflet > shadow, popover navigation-view > shadow, popover overlay-split-view > shadow { min-width: 56px; min-height: 56px; } + +popover flap > shadow.left, popover leaflet > shadow.left, popover navigation-view > shadow.left, popover overlay-split-view > shadow.left { background-image: linear-gradient(to right, alpha(@popover_shade_color,0.7), alpha(@popover_shade_color,0.14) 40px, alpha(@popover_shade_color,0) 56px), linear-gradient(to right, alpha(@popover_shade_color,0.4), alpha(@popover_shade_color,0.14) 7px, alpha(@popover_shade_color,0) 24px); } + +popover flap > shadow.right, popover leaflet > shadow.right, popover navigation-view > shadow.right, popover overlay-split-view > shadow.right { background-image: linear-gradient(to left, alpha(@popover_shade_color,0.7), alpha(@popover_shade_color,0.14) 40px, alpha(@popover_shade_color,0) 56px), linear-gradient(to left, alpha(@popover_shade_color,0.4), alpha(@popover_shade_color,0.14) 7px, alpha(@popover_shade_color,0) 24px); } + +popover flap > shadow.up, popover leaflet > shadow.up, popover navigation-view > shadow.up, popover overlay-split-view > shadow.up { background-image: linear-gradient(to bottom, alpha(@popover_shade_color,0.7), alpha(@popover_shade_color,0.14) 40px, alpha(@popover_shade_color,0) 56px), linear-gradient(to bottom, alpha(@popover_shade_color,0.4), alpha(@popover_shade_color,0.14) 7px, alpha(@popover_shade_color,0) 24px); } + +popover flap > shadow.down, popover leaflet > shadow.down, popover navigation-view > shadow.down, popover overlay-split-view > shadow.down { background-image: linear-gradient(to top, alpha(@popover_shade_color,0.7), alpha(@popover_shade_color,0.14) 40px, alpha(@popover_shade_color,0) 56px), linear-gradient(to top, alpha(@popover_shade_color,0.4), alpha(@popover_shade_color,0.14) 7px, alpha(@popover_shade_color,0) 24px); } + +preferencespage > scrolledwindow > viewport > clamp > box { margin: 24px 12px; border-spacing: 24px; } + +preferencesgroup > box, preferencesgroup > box .labels { border-spacing: 6px; } + +preferencesgroup > box > box.header:not(.single-line) { margin-bottom: 6px; } + +preferencesgroup > box > box.single-line { min-height: 34px; } + +progressbar.horizontal > trough { min-width: 150px; } + +progressbar.horizontal > trough, progressbar.horizontal > trough > progress { min-height: 8px; } + +progressbar.vertical > trough { min-height: 80px; } + +progressbar.vertical > trough, progressbar.vertical > trough > progress { min-width: 8px; } + +progressbar > text { font-size: smaller; } + +progressbar:disabled { filter: opacity(0.5); } + +progressbar > trough > progress { /* share most of scales' */ border-radius: 99px; } + +progressbar > trough > progress.left { border-top-left-radius: 99px; border-bottom-left-radius: 99px; } + +progressbar > trough > progress.right { border-top-right-radius: 99px; border-bottom-right-radius: 99px; } + +progressbar > trough > progress.top { border-top-right-radius: 99px; border-top-left-radius: 99px; } + +progressbar > trough > progress.bottom { border-bottom-right-radius: 99px; border-bottom-left-radius: 99px; } + +progressbar.osd { min-width: 2px; min-height: 2px; background-color: transparent; color: inherit; } + +progressbar.osd > trough { border-style: none; border-radius: 0; background-color: transparent; box-shadow: none; } + +progressbar.osd > trough > progress { border-style: none; border-radius: 0; } + +progressbar.osd.horizontal > trough, progressbar.osd.horizontal > trough > progress { min-height: 2px; } + +progressbar.osd.vertical > trough, progressbar.osd.vertical > trough > progress { min-width: 2px; } + +progressbar > trough.empty > progress { all: unset; } + +.osd progressbar > trough > progress { background-color: rgba(255, 255, 255, 0.75); } + +scale > trough > fill, scale > trough, progressbar > trough { border-radius: 99px; background-color: alpha(currentColor,0.15); } + +scale > trough > highlight, progressbar > trough > progress { border-radius: 99px; background-color: @accent_bg_color; color: @accent_fg_color; } + +scale { min-height: 10px; min-width: 10px; padding: 12px; } + +scale > trough > slider { outline: 0 solid transparent; outline-offset: 6px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +scale:focus:focus-visible > trough > slider { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: 0; } + +scale > trough > slider { background-color: mix(white,@view_bg_color,0.2); box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.2); border-radius: 100%; min-width: 20px; min-height: 20px; margin: -8px; } + +scale:hover > trough, scale:active > trough { background-color: alpha(currentColor,0.2); } + +scale:hover > trough > highlight, scale:active > trough > highlight { background-image: image(alpha(currentColor,0.1)); } + +scale:hover > trough > slider, scale:active > trough > slider { background-color: white; } + +.osd scale:focus:focus-visible > trough { outline-color: rgba(255, 255, 255, 0.5); } + +.osd scale > trough > highlight { background-color: rgba(255, 255, 255, 0.75); color: rgba(0, 0, 0, 0.75); } + +scale:disabled { filter: opacity(0.5); } + +scale:disabled > trough > slider { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 4px transparent; outline-color: rgba(0, 0, 0, 0.2); } + +scale.fine-tune { padding: 9px; } + +scale.fine-tune.horizontal { min-height: 16px; } + +scale.fine-tune.vertical { min-width: 16px; } + +scale.fine-tune > trough > slider { margin: -5px; } + +scale.marks-before:not(.marks-after) > trough > slider, scale.marks-after:not(.marks-before) > trough > slider { transform: rotate(45deg); box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 1px 1px 4px rgba(0, 0, 0, 0.2); } + +scale.marks-before:not(.marks-after) > trough > slider:disabled, scale.marks-after:not(.marks-before) > trough > slider:disabled { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 1px 1px 4px transparent; } + +scale.horizontal > marks { color: alpha(currentColor,0.55); } + +scale.horizontal > marks.top { margin-bottom: 6px; } + +scale.horizontal > marks.bottom { margin-top: 6px; } + +scale.horizontal > marks indicator { background-color: currentColor; min-height: 6px; min-width: 1px; } + +scale.horizontal > value.left { margin-right: 9px; } + +scale.horizontal > value.right { margin-left: 9px; } + +scale.horizontal.fine-tune > marks.top { margin-top: 3px; } + +scale.horizontal.fine-tune > marks.bottom { margin-bottom: 3px; } + +scale.horizontal.fine-tune > marks indicator { min-height: 3px; } + +scale.horizontal.marks-before { padding-top: 0; } + +scale.horizontal.marks-before > trough > slider { border-top-left-radius: 0; } + +scale.horizontal.marks-after { padding-bottom: 0; } + +scale.horizontal.marks-after > trough > slider { border-bottom-right-radius: 0; } + +scale.horizontal.marks-before.marks-after > trough > slider { border-radius: 100%; } + +scale.vertical > marks { color: alpha(currentColor,0.55); } + +scale.vertical > marks.top { margin-right: 6px; } + +scale.vertical > marks.bottom { margin-left: 6px; } + +scale.vertical > marks indicator { background-color: currentColor; min-height: 1px; min-width: 6px; } + +scale.vertical > value.top { margin-bottom: 9px; } + +scale.vertical > value.bottom { margin-top: 9px; } + +scale.vertical.fine-tune > marks.top { margin-left: 3px; } + +scale.vertical.fine-tune > marks.bottom { margin-right: 3px; } + +scale.vertical.fine-tune > marks indicator { min-height: 3px; } + +scale.vertical.marks-before { padding-left: 0; } + +scale.vertical.marks-before > trough > slider { border-bottom-left-radius: 0; } + +scale.vertical.marks-after { padding-right: 0; } + +scale.vertical.marks-after > trough > slider { border-top-right-radius: 0; } + +scale.color { padding: 0; } + +scale.color > trough { border: none; background: none; border-radius: 10px; } + +scale.color > trough > slider { margin: 0; background-color: rgba(255, 255, 255, 0.8); } + +scale.color.fine-tune { padding: 2px; } + +scale.color.fine-tune > trough > slider { margin: -2px; } + +scrollbar > range > trough { margin: 7px; transition: all 200ms linear; border-radius: 10px; } + +scrollbar > range > trough > slider { min-width: 8px; min-height: 8px; margin: -6px; border: 6px solid transparent; border-radius: 10px; background-clip: padding-box; transition: all 200ms linear; background-color: alpha(currentColor,0.2); } + +scrollbar > range > trough > slider:hover { background-color: alpha(currentColor,0.4); } + +scrollbar > range > trough > slider:active { background-color: alpha(currentColor,0.6); } + +scrollbar > range > trough > slider:disabled { opacity: 0; } + +scrollbar.horizontal > range > trough { margin-top: 6px; margin-bottom: 6px; } + +scrollbar.vertical > range > trough { margin-left: 6px; margin-right: 6px; } + +scrollbar.overlay-indicator { background: none; color: inherit; box-shadow: none; padding: 0; } + +scrollbar.overlay-indicator > range > trough { outline: 1px solid transparent; } + +scrollbar.overlay-indicator > range > trough > slider { outline: 1px solid alpha(@scrollbar_outline_color,0.6); outline-offset: -6px; } + +.osd scrollbar.overlay-indicator > range > trough > slider { outline: 1px solid alpha(rgba(0, 0, 0, 0.5),0.6); } + +scrollbar.overlay-indicator:not(.hovering) > range > trough > slider { min-width: 3px; min-height: 3px; outline-color: alpha(@scrollbar_outline_color,0.35); } + +.osd scrollbar.overlay-indicator:not(.hovering) > range > trough > slider { outline-color: alpha(rgba(0, 0, 0, 0.5),0.35); } + +scrollbar.overlay-indicator.hovering > range > trough { background-color: alpha(currentColor,0.1); } + +scrollbar.overlay-indicator.horizontal > range > trough > slider { min-width: 40px; } + +scrollbar.overlay-indicator.horizontal.hovering > range > trough > slider { min-height: 8px; } + +scrollbar.overlay-indicator.horizontal:not(.hovering) > range > trough { margin-top: 3px; margin-bottom: 3px; } + +scrollbar.overlay-indicator.vertical > range > trough > slider { min-height: 40px; } + +scrollbar.overlay-indicator.vertical.hovering > range > trough > slider { min-width: 8px; } + +scrollbar.overlay-indicator.vertical:not(.hovering) > range > trough { margin-left: 3px; margin-right: 3px; } + +scrollbar.horizontal > range > trough > slider { min-width: 40px; } + +scrollbar.vertical > range > trough > slider { min-height: 40px; } + +scrollbar > range.fine-tune > trough > slider, scrollbar > range.fine-tune > trough > slider:hover, scrollbar > range.fine-tune > trough > slider:active { background-color: alpha(@accent_color,0.6); } + +scrolledwindow > overshoot.top { background-image: radial-gradient(farthest-side at top, alpha(currentColor,0.12) 85%, alpha(currentColor,0)), radial-gradient(farthest-side at top, alpha(currentColor,0.05), alpha(currentColor,0)); background-size: 100% 3%, 100% 50%; background-repeat: no-repeat; background-position: top; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > overshoot.bottom { background-image: radial-gradient(farthest-side at bottom, alpha(currentColor,0.12) 85%, alpha(currentColor,0)), radial-gradient(farthest-side at bottom, alpha(currentColor,0.05), alpha(currentColor,0)); background-size: 100% 3%, 100% 50%; background-repeat: no-repeat; background-position: bottom; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > overshoot.left { background-image: radial-gradient(farthest-side at left, alpha(currentColor,0.12) 85%, alpha(currentColor,0)), radial-gradient(farthest-side at left, alpha(currentColor,0.05), alpha(currentColor,0)); background-size: 3% 100%, 50% 100%; background-repeat: no-repeat; background-position: left; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow > overshoot.right { background-image: radial-gradient(farthest-side at right, alpha(currentColor,0.12) 85%, alpha(currentColor,0)), radial-gradient(farthest-side at right, alpha(currentColor,0.05), alpha(currentColor,0)); background-size: 3% 100%, 50% 100%; background-repeat: no-repeat; background-position: right; background-color: transparent; border: none; box-shadow: none; } + +scrolledwindow.undershoot-top > undershoot.top { box-shadow: inset 0 1px alpha(@shade_color,0.75); background: linear-gradient(to bottom, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-bottom > undershoot.bottom { box-shadow: inset 0 -1px alpha(@shade_color,0.75); background: linear-gradient(to top, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { box-shadow: inset 1px 0 alpha(@shade_color,0.75); background: linear-gradient(to right, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { box-shadow: inset -1px 0 alpha(@shade_color,0.75); background: linear-gradient(to left, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { box-shadow: inset -1px 0 alpha(@shade_color,0.75); background: linear-gradient(to left, alpha(@shade_color,0.75), transparent 4px); } + +scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { box-shadow: inset 1px 0 alpha(@shade_color,0.75); background: linear-gradient(to right, alpha(@shade_color,0.75), transparent 4px); } + +shortcuts-section { margin: 20px; } + +.shortcuts-search-results { margin: 20px; border-spacing: 24px; } + +shortcut { border-spacing: 6px; border-radius: 6px; } + +shortcut { outline: 0 solid transparent; outline-offset: 8px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +shortcut:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: 4px; } + +shortcut > .keycap { min-width: 20px; min-height: 25px; padding: 2px 6px; border-radius: 6px; font-size: smaller; } + +shortcuts-section stackswitcher.circular { border-spacing: 12px; } + +shortcuts-section stackswitcher.circular > button.circular, shortcuts-section stackswitcher.circular > button.text-button.circular { min-width: 32px; min-height: 32px; padding: 0; } + +window.shortcuts headerbar.titlebar > windowhandle { padding-top: 3px; } + +window.shortcuts searchbar { background: none; } + +.sidebar-pane { background-color: @sidebar_bg_color; color: @sidebar_fg_color; } + +.sidebar-pane:backdrop { background-color: @sidebar_backdrop_color; transition: background-color 200ms ease-out; } + +.sidebar-pane toolbarview.undershoot-top scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(@sidebar_shade_color,0.75); background: linear-gradient(to bottom, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(@sidebar_shade_color,0.75); background: linear-gradient(to top, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-top > undershoot.top { box-shadow: inset 0 1px alpha(@sidebar_shade_color,0.75); background: linear-gradient(to bottom, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-bottom > undershoot.bottom { box-shadow: inset 0 -1px alpha(@sidebar_shade_color,0.75); background: linear-gradient(to top, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { box-shadow: inset 1px 0 alpha(@sidebar_shade_color,0.75); background: linear-gradient(to right, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { box-shadow: inset -1px 0 alpha(@sidebar_shade_color,0.75); background: linear-gradient(to left, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { box-shadow: inset -1px 0 alpha(@sidebar_shade_color,0.75); background: linear-gradient(to left, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { box-shadow: inset 1px 0 alpha(@sidebar_shade_color,0.75); background: linear-gradient(to right, alpha(@sidebar_shade_color,0.75), transparent 4px); } + +.sidebar-pane flap > dimming, .sidebar-pane leaflet > dimming, .sidebar-pane navigation-view > dimming, .sidebar-pane overlay-split-view > dimming { background: @sidebar_shade_color; } + +.sidebar-pane flap > shadow, .sidebar-pane leaflet > shadow, .sidebar-pane navigation-view > shadow, .sidebar-pane overlay-split-view > shadow { min-width: 56px; min-height: 56px; } + +.sidebar-pane flap > shadow.left, .sidebar-pane leaflet > shadow.left, .sidebar-pane navigation-view > shadow.left, .sidebar-pane overlay-split-view > shadow.left { background-image: linear-gradient(to right, alpha(@sidebar_shade_color,0.7), alpha(@sidebar_shade_color,0.14) 40px, alpha(@sidebar_shade_color,0) 56px), linear-gradient(to right, alpha(@sidebar_shade_color,0.4), alpha(@sidebar_shade_color,0.14) 7px, alpha(@sidebar_shade_color,0) 24px); } + +.sidebar-pane flap > shadow.right, .sidebar-pane leaflet > shadow.right, .sidebar-pane navigation-view > shadow.right, .sidebar-pane overlay-split-view > shadow.right { background-image: linear-gradient(to left, alpha(@sidebar_shade_color,0.7), alpha(@sidebar_shade_color,0.14) 40px, alpha(@sidebar_shade_color,0) 56px), linear-gradient(to left, alpha(@sidebar_shade_color,0.4), alpha(@sidebar_shade_color,0.14) 7px, alpha(@sidebar_shade_color,0) 24px); } + +.sidebar-pane flap > shadow.up, .sidebar-pane leaflet > shadow.up, .sidebar-pane navigation-view > shadow.up, .sidebar-pane overlay-split-view > shadow.up { background-image: linear-gradient(to bottom, alpha(@sidebar_shade_color,0.7), alpha(@sidebar_shade_color,0.14) 40px, alpha(@sidebar_shade_color,0) 56px), linear-gradient(to bottom, alpha(@sidebar_shade_color,0.4), alpha(@sidebar_shade_color,0.14) 7px, alpha(@sidebar_shade_color,0) 24px); } + +.sidebar-pane flap > shadow.down, .sidebar-pane leaflet > shadow.down, .sidebar-pane navigation-view > shadow.down, .sidebar-pane overlay-split-view > shadow.down { background-image: linear-gradient(to top, alpha(@sidebar_shade_color,0.7), alpha(@sidebar_shade_color,0.14) 40px, alpha(@sidebar_shade_color,0) 56px), linear-gradient(to top, alpha(@sidebar_shade_color,0.4), alpha(@sidebar_shade_color,0.14) 7px, alpha(@sidebar_shade_color,0) 24px); } + +.sidebar-pane banner > revealer > widget { background-color: mix(@accent_bg_color,@sidebar_bg_color,0.7); color: @sidebar_fg_color; } + +.sidebar-pane banner > revealer > widget:backdrop { background-color: mix(@accent_bg_color,@sidebar_backdrop_color,0.85); } + +.sidebar-pane:dir(ltr), .sidebar-pane:dir(ltr) banner > revealer > widget, .sidebar-pane.end:dir(rtl), .sidebar-pane.end:dir(rtl) banner > revealer > widget { box-shadow: inset -1px 0 @sidebar_border_color; } + +.sidebar-pane:dir(rtl), .sidebar-pane:dir(rtl) banner > revealer > widget, .sidebar-pane.end:dir(ltr), .sidebar-pane.end:dir(ltr) banner > revealer > widget { box-shadow: inset 1px 0 @sidebar_border_color; } + +/* Middle pane in three-pane setups */ +.content-pane .sidebar-pane, .sidebar-pane .content-pane { background-color: @secondary_sidebar_bg_color; color: @secondary_sidebar_fg_color; } + +.content-pane .sidebar-pane:backdrop, .sidebar-pane .content-pane:backdrop { background-color: @secondary_sidebar_backdrop_color; transition: background-color 200ms ease-out; } + +.content-pane .sidebar-pane toolbarview.undershoot-top scrolledwindow > undershoot.top, .sidebar-pane .content-pane toolbarview.undershoot-top scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(@secondary_sidebar_shade_color,0.75); background: linear-gradient(to bottom, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom, .sidebar-pane .content-pane toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(@secondary_sidebar_shade_color,0.75); background: linear-gradient(to top, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-top > undershoot.top, .sidebar-pane .content-pane scrolledwindow.undershoot-top > undershoot.top { box-shadow: inset 0 1px alpha(@secondary_sidebar_shade_color,0.75); background: linear-gradient(to bottom, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-bottom > undershoot.bottom, .sidebar-pane .content-pane scrolledwindow.undershoot-bottom > undershoot.bottom { box-shadow: inset 0 -1px alpha(@secondary_sidebar_shade_color,0.75); background: linear-gradient(to top, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left, .sidebar-pane .content-pane scrolledwindow.undershoot-start:dir(ltr) > undershoot.left { box-shadow: inset 1px 0 alpha(@secondary_sidebar_shade_color,0.75); background: linear-gradient(to right, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right, .sidebar-pane .content-pane scrolledwindow.undershoot-start:dir(rtl) > undershoot.right { box-shadow: inset -1px 0 alpha(@secondary_sidebar_shade_color,0.75); background: linear-gradient(to left, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right, .sidebar-pane .content-pane scrolledwindow.undershoot-end:dir(ltr) > undershoot.right { box-shadow: inset -1px 0 alpha(@secondary_sidebar_shade_color,0.75); background: linear-gradient(to left, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left, .sidebar-pane .content-pane scrolledwindow.undershoot-end:dir(rtl) > undershoot.left { box-shadow: inset 1px 0 alpha(@secondary_sidebar_shade_color,0.75); background: linear-gradient(to right, alpha(@secondary_sidebar_shade_color,0.75), transparent 4px); } + +.content-pane .sidebar-pane flap > dimming, .content-pane .sidebar-pane leaflet > dimming, .content-pane .sidebar-pane navigation-view > dimming, .content-pane .sidebar-pane overlay-split-view > dimming, .sidebar-pane .content-pane flap > dimming, .sidebar-pane .content-pane leaflet > dimming, .sidebar-pane .content-pane navigation-view > dimming, .sidebar-pane .content-pane overlay-split-view > dimming { background: @secondary_sidebar_shade_color; } + +.content-pane .sidebar-pane flap > shadow, .content-pane .sidebar-pane leaflet > shadow, .content-pane .sidebar-pane navigation-view > shadow, .content-pane .sidebar-pane overlay-split-view > shadow, .sidebar-pane .content-pane flap > shadow, .sidebar-pane .content-pane leaflet > shadow, .sidebar-pane .content-pane navigation-view > shadow, .sidebar-pane .content-pane overlay-split-view > shadow { min-width: 56px; min-height: 56px; } + +.content-pane .sidebar-pane flap > shadow.left, .content-pane .sidebar-pane leaflet > shadow.left, .content-pane .sidebar-pane navigation-view > shadow.left, .content-pane .sidebar-pane overlay-split-view > shadow.left, .sidebar-pane .content-pane flap > shadow.left, .sidebar-pane .content-pane leaflet > shadow.left, .sidebar-pane .content-pane navigation-view > shadow.left, .sidebar-pane .content-pane overlay-split-view > shadow.left { background-image: linear-gradient(to right, alpha(@secondary_sidebar_shade_color,0.7), alpha(@secondary_sidebar_shade_color,0.14) 40px, alpha(@secondary_sidebar_shade_color,0) 56px), linear-gradient(to right, alpha(@secondary_sidebar_shade_color,0.4), alpha(@secondary_sidebar_shade_color,0.14) 7px, alpha(@secondary_sidebar_shade_color,0) 24px); } + +.content-pane .sidebar-pane flap > shadow.right, .content-pane .sidebar-pane leaflet > shadow.right, .content-pane .sidebar-pane navigation-view > shadow.right, .content-pane .sidebar-pane overlay-split-view > shadow.right, .sidebar-pane .content-pane flap > shadow.right, .sidebar-pane .content-pane leaflet > shadow.right, .sidebar-pane .content-pane navigation-view > shadow.right, .sidebar-pane .content-pane overlay-split-view > shadow.right { background-image: linear-gradient(to left, alpha(@secondary_sidebar_shade_color,0.7), alpha(@secondary_sidebar_shade_color,0.14) 40px, alpha(@secondary_sidebar_shade_color,0) 56px), linear-gradient(to left, alpha(@secondary_sidebar_shade_color,0.4), alpha(@secondary_sidebar_shade_color,0.14) 7px, alpha(@secondary_sidebar_shade_color,0) 24px); } + +.content-pane .sidebar-pane flap > shadow.up, .content-pane .sidebar-pane leaflet > shadow.up, .content-pane .sidebar-pane navigation-view > shadow.up, .content-pane .sidebar-pane overlay-split-view > shadow.up, .sidebar-pane .content-pane flap > shadow.up, .sidebar-pane .content-pane leaflet > shadow.up, .sidebar-pane .content-pane navigation-view > shadow.up, .sidebar-pane .content-pane overlay-split-view > shadow.up { background-image: linear-gradient(to bottom, alpha(@secondary_sidebar_shade_color,0.7), alpha(@secondary_sidebar_shade_color,0.14) 40px, alpha(@secondary_sidebar_shade_color,0) 56px), linear-gradient(to bottom, alpha(@secondary_sidebar_shade_color,0.4), alpha(@secondary_sidebar_shade_color,0.14) 7px, alpha(@secondary_sidebar_shade_color,0) 24px); } + +.content-pane .sidebar-pane flap > shadow.down, .content-pane .sidebar-pane leaflet > shadow.down, .content-pane .sidebar-pane navigation-view > shadow.down, .content-pane .sidebar-pane overlay-split-view > shadow.down, .sidebar-pane .content-pane flap > shadow.down, .sidebar-pane .content-pane leaflet > shadow.down, .sidebar-pane .content-pane navigation-view > shadow.down, .sidebar-pane .content-pane overlay-split-view > shadow.down { background-image: linear-gradient(to top, alpha(@secondary_sidebar_shade_color,0.7), alpha(@secondary_sidebar_shade_color,0.14) 40px, alpha(@secondary_sidebar_shade_color,0) 56px), linear-gradient(to top, alpha(@secondary_sidebar_shade_color,0.4), alpha(@secondary_sidebar_shade_color,0.14) 7px, alpha(@secondary_sidebar_shade_color,0) 24px); } + +.content-pane .sidebar-pane banner > revealer > widget, .sidebar-pane .content-pane banner > revealer > widget { background-color: mix(@accent_bg_color,@secondary_sidebar_bg_color,0.7); color: @secondary_sidebar_fg_color; } + +.content-pane .sidebar-pane banner > revealer > widget:backdrop, .sidebar-pane .content-pane banner > revealer > widget:backdrop { background-color: mix(@accent_bg_color,@secondary_sidebar_backdrop_color,0.85); } + +.content-pane .sidebar-pane:dir(ltr), .content-pane .sidebar-pane:dir(ltr) banner > revealer > widget, .content-pane .sidebar-pane.end:dir(rtl), .content-pane .sidebar-pane.end:dir(rtl) banner > revealer > widget, .sidebar-pane .content-pane:dir(ltr), .sidebar-pane .content-pane:dir(ltr) banner > revealer > widget, .sidebar-pane .content-pane.end:dir(rtl), .sidebar-pane .content-pane.end:dir(rtl) banner > revealer > widget { box-shadow: inset -1px 0 @secondary_sidebar_border_color; } + +.content-pane .sidebar-pane:dir(rtl), .content-pane .sidebar-pane:dir(rtl) banner > revealer > widget, .content-pane .sidebar-pane.end:dir(ltr), .content-pane .sidebar-pane.end:dir(ltr) banner > revealer > widget, .sidebar-pane .content-pane:dir(rtl), .sidebar-pane .content-pane:dir(rtl) banner > revealer > widget, .sidebar-pane .content-pane.end:dir(ltr), .sidebar-pane .content-pane.end:dir(ltr) banner > revealer > widget { box-shadow: inset 1px 0 @secondary_sidebar_border_color; } + +.sidebar-pane .sidebar-pane { background-color: transparent; color: inherit; } + +stacksidebar row { padding: 10px 4px; } + +stacksidebar row > label { padding-left: 6px; padding-right: 6px; } + +stacksidebar row.needs-attention > label { background-size: 6px 6px, 0 0; } + +/********************** Navigation Sidebar * */ +.navigation-sidebar { padding: 6px 0; } + +.navigation-sidebar, .navigation-sidebar.view, window.print .navigation-sidebar.dialog-action-box, .navigation-sidebar.view:disabled { background-color: transparent; color: inherit; } + +.navigation-sidebar.background, .navigation-sidebar.background:disabled { background-color: @window_bg_color; color: @window_fg_color; } + +.navigation-sidebar row.activatable:hover { background-color: alpha(currentColor,0.07); } + +.navigation-sidebar row.activatable:active { background-color: alpha(currentColor,0.16); } + +.navigation-sidebar row.activatable.has-open-popup { background-color: alpha(currentColor,0.07); } + +.navigation-sidebar row.activatable:selected:hover { background-color: alpha(currentColor,0.13); } + +.navigation-sidebar row.activatable:selected:active { background-color: alpha(currentColor,0.19); } + +.navigation-sidebar row.activatable.has-open-popup:selected { background-color: alpha(currentColor,0.13); } + +.navigation-sidebar row:selected { background-color: alpha(currentColor,0.1); } + +.navigation-sidebar > separator { margin: 6px; } + +.navigation-sidebar > row { min-height: 36px; padding: 0 8px; border-radius: 6px; margin: 0 6px 2px; } + +@keyframes spin { to { transform: rotate(1turn); } } + +spinner { background: none; opacity: 0; -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); } + +spinner:checked { opacity: 1; animation: spin 1s linear infinite; } + +spinner:checked:disabled { opacity: 0.5; } + +spinbutton { padding: 0; border-spacing: 0; /* :not here just to bump specificity above that of the list button styling */ } + +spinbutton > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) { margin: 0; border-radius: 0; box-shadow: none; border-style: solid; border-color: alpha(currentColor,0.1); } + +spinbutton:not(.vertical) { /* :not here just to bump specificity above that of the list button styling */ } + +spinbutton:not(.vertical) > text { min-width: 28px; padding: 6px; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), spinbutton:not(.vertical) > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) { min-height: 16px; min-width: 22px; padding-bottom: 0; padding-top: 0; border-left-width: 1px; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl), spinbutton:not(.vertical) > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl) { border-left-width: 0; border-right-width: 1px; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child, spinbutton:not(.vertical) > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(ltr):last-child { border-radius: 0 6px 6px 0; } + +spinbutton:not(.vertical) > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child, spinbutton:not(.vertical) > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):dir(rtl):first-child { border-radius: 6px 0 0 6px; } + +spinbutton.vertical { /* :not here just to bump specificity above that of the list button styling */ } + +spinbutton.vertical > text { min-height: 30px; min-width: 30px; } + +spinbutton.vertical > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child, spinbutton.vertical > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):last-child { border-top-width: 1px; border-radius: 0 0 6px 6px; } + +spinbutton.vertical > button.image-button.up:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):first-child, spinbutton.vertical > button.image-button.down:not(.flat):not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):first-child { border-bottom-width: 1px; border-radius: 6px 6px 0 0; } + +switch { border-radius: 14px; padding: 3px; background-color: alpha(currentColor,0.15); } + +switch:hover { background-color: alpha(currentColor,0.2); } + +switch:active { background-color: alpha(currentColor,0.25); } + +switch { outline: 0 solid transparent; outline-offset: 5px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +switch:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: 1px; } + +switch:disabled { filter: opacity(0.5); } + +switch > slider { min-width: 20px; min-height: 20px; border-radius: 50%; background-color: mix(white,@view_bg_color,0.2); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); } + +switch > slider:disabled { box-shadow: 0 2px 4px transparent; } + +switch:hover > slider, switch:active > slider { background: white; } + +switch:checked { color: @accent_fg_color; background-color: @accent_bg_color; } + +switch:checked:hover { background-image: image(alpha(currentColor,0.1)); } + +switch:checked:active { background-image: image(rgba(0, 0, 0, 0.2)); } + +switch:checked > slider { background-color: white; } + +.osd switch:focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +.osd switch:checked { background-color: rgba(255, 255, 255, 0.6); color: rgba(0, 0, 0, 0.75); } + +tabbar .box { background-color: @headerbar_bg_color; color: @headerbar_fg_color; box-shadow: inset 0 -1px @headerbar_shade_color; padding: 1px; padding-top: 0; } + +tabbar .box:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +tabbar .box:backdrop > scrolledwindow, tabbar .box:backdrop > .start-action, tabbar .box:backdrop > .end-action { filter: opacity(0.5); transition: filter 200ms ease-out; } + +tabbar tabbox { padding-bottom: 6px; padding-top: 6px; min-height: 34px; } + +tabbar tabbox > tabboxchild { border-radius: 6px; } + +tabbar tabbox > tabboxchild { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +tabbar tabbox > tabboxchild:focus-within:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +tabbar tabbox > separator { margin-top: 3px; margin-bottom: 3px; transition: opacity 150ms ease-in-out; } + +tabbar tabbox > separator.hidden { opacity: 0; } + +tabbar tabbox > revealer > indicator { min-width: 2px; border-radius: 2px; margin: 3px 6px; background: alpha(@accent_color,0.5); } + +tabbar tab { transition: background 150ms ease-in-out; } + +tabbar tab:selected { background-color: alpha(currentColor,0.1); } + +tabbar tab:selected:hover { background-color: alpha(currentColor,0.13); } + +tabbar tab:selected:active { background-color: alpha(currentColor,0.19); } + +tabbar tab:hover { background-color: alpha(currentColor,0.07); } + +tabbar tab:active { background-color: alpha(currentColor,0.16); } + +tabbar tabbox.single-tab tab, tabbar tabbox.single-tab tab:hover, tabbar tabbox.single-tab tab:active { background: none; } + +tabbar .start-action, tabbar .end-action { padding: 6px 5px; } + +tabbar .start-action:dir(ltr), tabbar .end-action:dir(rtl) { padding-right: 0; } + +tabbar .start-action:dir(rtl), tabbar .end-action:dir(ltr) { padding-left: 0; } + +toolbarview > .top-bar tabbar .box, toolbarview > .bottom-bar tabbar .box, tabbar.inline .box { background-color: transparent; color: inherit; box-shadow: none; padding-bottom: 0; } + +toolbarview > .top-bar tabbar .box:backdrop, toolbarview > .bottom-bar tabbar .box:backdrop, tabbar.inline .box:backdrop { background-color: transparent; transition: none; } + +toolbarview > .top-bar tabbar .box:backdrop > scrolledwindow, toolbarview > .bottom-bar tabbar .box:backdrop > scrolledwindow, tabbar.inline .box:backdrop > scrolledwindow, toolbarview > .top-bar tabbar .box:backdrop > .start-action, toolbarview > .bottom-bar tabbar .box:backdrop > .start-action, tabbar.inline .box:backdrop > .start-action, toolbarview > .top-bar tabbar .box:backdrop > .end-action, toolbarview > .bottom-bar tabbar .box:backdrop > .end-action, tabbar.inline .box:backdrop > .end-action { filter: none; transition: none; } + +toolbarview > .top-bar .collapse-spacing tabbar tabbox, toolbarview > .bottom-bar .collapse-spacing tabbar tabbox, toolbarview > .top-bar .collapse-spacing tabbar .start-action, toolbarview > .bottom-bar .collapse-spacing tabbar .start-action, toolbarview > .top-bar .collapse-spacing tabbar .end-action, toolbarview > .bottom-bar .collapse-spacing tabbar .end-action { padding-top: 3px; padding-bottom: 3px; } + +dnd tab { background-color: @headerbar_bg_color; background-image: image(alpha(currentColor,0.19)); color: @headerbar_fg_color; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.03), 0 1px 3px 1px rgba(0, 0, 0, 0.07), 0 2px 6px 2px rgba(0, 0, 0, 0.03); margin: 25px; } + +tabbar tab, dnd tab { min-height: 26px; padding: 4px; border-radius: 6px; } + +tabbar tab button.image-button, dnd tab button.image-button { padding: 0; margin: 0; min-width: 24px; min-height: 24px; border-radius: 99px; } + +tabbar tab indicator, dnd tab indicator { min-height: 2px; border-radius: 2px; background: alpha(@accent_color,0.5); transform: translateY(4px); } + +tabgrid > tabgridchild .card { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +tabgrid > tabgridchild:focus:focus-visible .card { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: 0; } + +tabthumbnail { border-radius: 16px; transition: box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), background-color cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +tabthumbnail > box { margin: 6px; } + +tabthumbnail:drop(active) { box-shadow: inset 0 0 0 2px alpha(@accent_bg_color,0.4); background-color: alpha(@accent_bg_color,0.1); } + +tabthumbnail .needs-attention:dir(ltr) { transform: translate(8px, -8px); } + +tabthumbnail .needs-attention:dir(rtl) { transform: translate(-8px, -8px); } + +tabthumbnail .needs-attention > widget { background: @accent_color; min-width: 12px; min-height: 12px; border-radius: 8px; margin: 3px; box-shadow: 0 1px 2px alpha(@accent_color,0.4); } + +tabthumbnail .card { background: none; color: inherit; } + +tabthumbnail .card picture { outline: 1px solid rgba(255, 255, 255, 0.07); outline-offset: -1px; border-radius: 12px; } + +tabthumbnail.pinned .card { background-color: @thumbnail_bg_color; color: @thumbnail_fg_color; } + +tabthumbnail .icon-title-box { border-spacing: 6px; } + +tabthumbnail .tab-unpin-icon { margin: 6px; min-width: 24px; min-height: 24px; } + +tabthumbnail button.circular { margin: 6px; background-color: alpha(@thumbnail_bg_color,0.75); min-width: 24px; min-height: 24px; } + +tabthumbnail button.circular:hover { background-color: alpha(mix(@thumbnail_bg_color,currentColor,0.1),0.75); } + +tabthumbnail button.circular:active { background-color: alpha(mix(@thumbnail_bg_color,currentColor,0.2),0.75); } + +taboverview > .overview .new-tab-button { margin: 18px; } + +tabview:drop(active), tabbox:drop(active), tabgrid:drop(active) { box-shadow: none; } + +cursor-handle { all: unset; padding: 24px 20px; } + +cursor-handle > contents { min-width: 20px; min-height: 20px; border-radius: 50%; background-color: @accent_bg_color; } + +cursor-handle.top > contents { border-top-right-radius: 0; } + +cursor-handle.bottom > contents { border-top-left-radius: 0; transform: translateX(1px); } + +cursor-handle.insertion-cursor > contents { border-top-left-radius: 0; transform: translateX(1px) translateY(4px) rotate(45deg); } + +magnifier { background-color: @view_bg_color; } + +actionbar > revealer > box.osd button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):focus:focus-visible, searchbar > revealer > box.osd button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):focus:focus-visible, .osd.toolbar button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):focus:focus-visible, headerbar.osd button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):focus:focus-visible { outline-color: rgba(255, 255, 255, 0.5); } + +actionbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.suggested-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.destructive-action > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), actionbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), searchbar > revealer > box menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), .toolbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque), headerbar menubutton.opaque > button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) { color: inherit; background-color: transparent; } + +actionbar > revealer > box switch, searchbar > revealer > box switch, .toolbar switch, headerbar switch { margin-top: 4px; margin-bottom: 4px; } + +.toolbar { padding: 6px; border-spacing: 6px; } + +.toolbar.osd { padding: 12px; border-radius: 12px; } + +toolbarview > .top-bar .collapse-spacing .toolbar, toolbarview > .bottom-bar .collapse-spacing .toolbar { padding-top: 3px; padding-bottom: 3px; } + +/**************** GtkSearchBar * */ +searchbar > revealer > box { padding: 6px 6px 7px 6px; background-color: @headerbar_bg_color; color: @headerbar_fg_color; box-shadow: inset 0 -1px @headerbar_shade_color; } + +searchbar > revealer > box:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +searchbar > revealer > box:backdrop > * { filter: opacity(0.5); transition: filter 200ms ease-out; } + +searchbar > revealer > box .close { min-width: 18px; min-height: 18px; padding: 4px; border-radius: 50%; } + +searchbar > revealer > box .close:dir(ltr) { margin-left: 10px; margin-right: 4px; } + +searchbar > revealer > box .close:dir(rtl) { margin-left: 4px; margin-right: 10px; } + +toolbarview > .top-bar searchbar > revealer > box, toolbarview > .bottom-bar searchbar > revealer > box, searchbar.inline > revealer > box, window.appchooser searchbar > revealer > box, window.shortcuts searchbar > revealer > box { background-color: transparent; color: inherit; box-shadow: none; padding-bottom: 6px; } + +toolbarview > .top-bar searchbar > revealer > box:backdrop, toolbarview > .bottom-bar searchbar > revealer > box:backdrop, searchbar.inline > revealer > box:backdrop { background-color: transparent; transition: none; } + +toolbarview > .top-bar searchbar > revealer > box:backdrop > *, toolbarview > .bottom-bar searchbar > revealer > box:backdrop > *, searchbar.inline > revealer > box:backdrop > * { filter: none; transition: none; } + +toolbarview > .top-bar .collapse-spacing searchbar > revealer > box, toolbarview > .bottom-bar .collapse-spacing searchbar > revealer > box, window.appchooser.csd searchbar > revealer > box, window.shortcuts searchbar > revealer > box { padding-top: 3px; padding-bottom: 3px; } + +/**************** GtkActionBar * */ +actionbar > revealer > box { background-color: @headerbar_bg_color; color: @headerbar_fg_color; box-shadow: inset 0 1px @headerbar_shade_color; padding: 7px 6px 6px 6px; } + +actionbar > revealer > box, actionbar > revealer > box > box.start, actionbar > revealer > box > box.end { border-spacing: 6px; } + +actionbar > revealer > box:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +actionbar > revealer > box:backdrop > * { filter: opacity(0.5); transition: filter 200ms ease-out; } + +toolbarview > .top-bar actionbar > revealer > box, toolbarview > .bottom-bar actionbar > revealer > box { background-color: transparent; color: inherit; box-shadow: none; padding-top: 6px; } + +toolbarview > .top-bar actionbar > revealer > box:backdrop, toolbarview > .bottom-bar actionbar > revealer > box:backdrop { background-color: transparent; transition: none; } + +toolbarview > .top-bar actionbar > revealer > box:backdrop > *, toolbarview > .bottom-bar actionbar > revealer > box:backdrop > * { filter: none; transition: none; } + +toolbarview > .top-bar .collapse-spacing actionbar > revealer > box, toolbarview > .bottom-bar .collapse-spacing actionbar > revealer > box { padding-top: 3px; padding-bottom: 3px; } + +/************* AdwBanner * */ +banner > revealer > widget { /* There are 2 more instances in _sidebars.css, keep in sync with that */ background-color: mix(@accent_bg_color,@window_bg_color,0.7); color: @window_fg_color; padding: 6px; } + +banner > revealer > widget:backdrop { background-color: mix(@accent_bg_color,@window_bg_color,0.85); transition: background-color 200ms ease-out; } + +banner > revealer > widget:backdrop > label, banner > revealer > widget:backdrop > button { filter: opacity(0.5); transition: filter 200ms ease-out; } + +/****************** AdwToolbarView * */ +toolbarview > .top-bar .collapse-spacing, toolbarview > .bottom-bar .collapse-spacing { padding-top: 3px; padding-bottom: 3px; } + +toolbarview > .top-bar.raised, toolbarview > .bottom-bar.raised { background-color: @headerbar_bg_color; color: @headerbar_fg_color; } + +toolbarview > .top-bar.raised:backdrop, toolbarview > .bottom-bar.raised:backdrop { background-color: @headerbar_backdrop_color; transition: background-color 200ms ease-out; } + +toolbarview > .top-bar:backdrop > windowhandle, toolbarview > .bottom-bar:backdrop > windowhandle { filter: opacity(0.5); transition: filter 200ms ease-out; } + +toolbarview > .top-bar.raised { box-shadow: 0 1px alpha(@headerbar_shade_color,0.5), 0 2px 4px alpha(@headerbar_shade_color,0.5); } + +toolbarview > .top-bar.raised.border { box-shadow: 0 1px @headerbar_darker_shade_color; } + +toolbarview > .bottom-bar.raised { box-shadow: 0 -1px alpha(@headerbar_shade_color,0.5), 0 -2px 4px alpha(@headerbar_shade_color,0.5); } + +toolbarview > .bottom-bar.raised.border { box-shadow: 0 -1px @headerbar_darker_shade_color; } + +toolbarview.undershoot-top scrolledwindow > undershoot.top { box-shadow: inset 0 1px alpha(@shade_color,0.75); background: linear-gradient(to bottom, alpha(@shade_color,0.75), transparent 4px); } + +toolbarview.undershoot-bottom scrolledwindow > undershoot.bottom { box-shadow: inset 0 -1px alpha(@shade_color,0.75); background: linear-gradient(to top, alpha(@shade_color,0.75), transparent 4px); } + +window.devel toolbarview > .top-bar { background-image: cross-fade(5% -gtk-recolor(url("assets/devel-symbolic.svg")), image(transparent)); background-repeat: repeat-x; } + +window.devel dialog toolbarview > .top-bar { background-image: unset; background-repeat: unset; } + +tooltip { padding: 6px 10px; border-radius: 9px; box-shadow: none; } + +tooltip.background { background-color: rgba(0, 0, 0, 0.8); background-clip: padding-box; border: 1px solid rgba(255, 255, 255, 0.1); color: white; } + +tooltip > box { border-spacing: 6px; } + +.view, window.print .dialog-action-box, textview > text, dialog-host > dialog.view sheet, window.print dialog-host > dialog.dialog-action-box sheet, iconview { color: @view_fg_color; background-color: @view_bg_color; } + +.view:disabled, window.print .dialog-action-box:disabled, textview > text:disabled, dialog-host > dialog.view sheet:disabled, window.print dialog-host > dialog.dialog-action-box sheet:disabled, iconview:disabled { color: alpha(currentColor,0.5); background-color: mix(@window_bg_color,@view_bg_color,0.4); } + +.view:selected:focus, .view:selected, window.print .dialog-action-box:selected, textview > text:selected, dialog-host > dialog.view sheet:selected, window.print dialog-host > dialog.dialog-action-box sheet:selected, iconview:selected { background-color: alpha(@accent_bg_color,0.25); border-radius: 6px; } + +textview { caret-color: currentColor; } + +textview > text { background-color: transparent; } + +textview > border { background-color: mix(@window_bg_color,@view_bg_color,0.5); } + +textview:drop(active) { caret-color: @accent_bg_color; } + +rubberband { border: 1px solid @accent_color; background-color: alpha(@accent_color,0.2); } + +flowbox > flowboxchild, gridview > child { padding: 3px; border-radius: 6px; } + +flowbox > flowboxchild, gridview > child { outline: 0 solid transparent; outline-offset: 4px; transition: outline-color 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94), outline-offset 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } + +flowbox > flowboxchild:focus:focus-visible, gridview > child:focus:focus-visible { outline-color: alpha(@accent_color,0.5); outline-width: 2px; outline-offset: -2px; } + +flowbox > flowboxchild:selected, gridview > child:selected { background-color: alpha(@accent_bg_color,0.25); } + +gridview > child.activatable:hover { background-color: alpha(currentColor,0.04); } + +gridview > child.activatable:active { background-color: alpha(currentColor,0.08); } + +gridview > child.activatable:selected:hover { background-color: alpha(@accent_bg_color,0.32); } + +gridview > child.activatable:selected:active { background-color: alpha(@accent_bg_color,0.39); } + +viewswitcher { border-spacing: 3px; } + +viewswitcher.narrow { margin-top: -3px; margin-bottom: -3px; min-height: 6px; } + +viewswitcher button.toggle { padding: 0; } + +viewswitcher button.toggle > stack > box.narrow { font-size: 0.75rem; padding-top: 4px; } + +viewswitcher button.toggle > stack > box.narrow > label { min-height: 18px; padding-left: 3px; padding-right: 3px; padding-bottom: 2px; } + +viewswitcher button.toggle > stack > box.wide { padding: 2px 12px; border-spacing: 6px; } + +/********************** AdwViewSwitcherBar * */ +viewswitcherbar actionbar > revealer > box { padding-left: 0; padding-right: 0; padding-top: 7px; } + +toolbarview > .top-bar .collapse-spacing viewswitcherbar actionbar > revealer > box, toolbarview > .bottom-bar .collapse-spacing viewswitcherbar actionbar > revealer > box { padding-top: 6px; } + +/************************ AdwViewSwitcherTitle * */ +viewswitchertitle { margin-top: -6px; margin-bottom: -6px; } + +viewswitchertitle viewswitcher { margin-left: 12px; margin-right: 12px; } + +viewswitchertitle viewswitcher.narrow { margin-top: 3px; margin-bottom: 3px; } + +viewswitchertitle viewswitcher.wide { margin-top: 6px; margin-bottom: 6px; } + +viewswitchertitle windowtitle { margin-top: 0; margin-bottom: 0; } + +/******************* AdwIndicatorBin * */ +indicatorbin > indicator, indicatorbin > mask { min-width: 6px; min-height: 6px; border-radius: 100px; } + +indicatorbin > indicator { margin: 1px; background: alpha(currentColor,0.4); } + +indicatorbin > mask { padding: 1px; background: black; } + +indicatorbin.needs-attention > indicator { background: @accent_color; } + +indicatorbin.badge > indicator, indicatorbin.badge > mask { min-height: 13px; } + +indicatorbin.badge > indicator > label { font-size: 0.6rem; font-weight: bold; padding-left: 4px; padding-right: 4px; color: white; } + +indicatorbin.badge.needs-attention > indicator { background: @accent_bg_color; } + +indicatorbin.badge.needs-attention > indicator > label { color: @accent_fg_color; } + +window.csd { box-shadow: 0 1px 3px 3px transparent, 0 2px 8px 2px rgba(0, 0, 0, 0.13), 0 3px 20px 10px rgba(0, 0, 0, 0.09), 0 6px 32px 16px rgba(0, 0, 0, 0.04), 0 0 0 1px rgba(0, 0, 0, 0.05); margin: 0px; border-radius: 12px; outline: 1px solid rgba(255, 255, 255, 0.07); outline-offset: -1px; } + +window.csd:backdrop { box-shadow: 0 1px 3px 3px rgba(0, 0, 0, 0.09), 0 2px 14px 5px rgba(0, 0, 0, 0.05), 0 4px 28px 12px rgba(0, 0, 0, 0.03), 0 6px 32px 16px transparent, 0 0 0 1px rgba(0, 0, 0, 0.02); transition: box-shadow 200ms ease-out; } + +window.csd.dialog.message, window.csd.messagedialog { box-shadow: 0 2px 8px 2px rgba(0, 0, 0, 0.07), 0 3px 20px 10px rgba(0, 0, 0, 0.05), 0 6px 32px 16px rgba(0, 0, 0, 0.02), 0 0 0 1px rgba(0, 0, 0, 0.05); } + +window.csd.tiled, window.csd.tiled-top, window.csd.tiled-left, window.csd.tiled-right, window.csd.tiled-bottom { border-radius: 0; outline: none; box-shadow: 0 0 0 1px alpha(currentColor,0.15), 0 0 0 20px transparent; } + +window.csd.tiled:backdrop, window.csd.tiled-top:backdrop, window.csd.tiled-left:backdrop, window.csd.tiled-right:backdrop, window.csd.tiled-bottom:backdrop { box-shadow: 0 0 0 1px alpha(currentColor,0.15), 0 0 0 20px transparent; } + +window.csd.maximized, window.csd.fullscreen { border-radius: 0; outline: none; box-shadow: none; transition: none; } + +window.solid-csd { margin: 0; padding: 5px; border-radius: 0; box-shadow: inset 0 0 0 5px alpha(currentColor,0.15), inset 0 0 0 4px @headerbar_bg_color, inset 0 0 0 1px alpha(currentColor,0.15); } + +window.solid-csd:backdrop { box-shadow: inset 0 0 0 5px alpha(currentColor,0.15), inset 0 0 0 4px @headerbar_backdrop_color, inset 0 0 0 1px alpha(currentColor,0.15); } + +window.ssd { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05); } + +/* Public colors from Default */ +@define-color theme_bg_color @window_bg_color; +@define-color theme_fg_color @window_fg_color; +@define-color theme_base_color @view_bg_color; +@define-color theme_text_color @view_fg_color; +@define-color theme_selected_bg_color @accent_bg_color; +@define-color theme_selected_fg_color @accent_fg_color; +@define-color insensitive_bg_color mix(@window_bg_color,@view_bg_color,0.4); +@define-color insensitive_fg_color alpha(@window_fg_color,0.5); +@define-color insensitive_base_color @view_bg_color; +@define-color borders alpha(currentColor,0.15); +@define-color theme_unfocused_bg_color @window_bg_color; +@define-color theme_unfocused_fg_color @window_fg_color; +@define-color theme_unfocused_base_color @view_bg_color; +@define-color theme_unfocused_text_color @view_fg_color; +@define-color theme_unfocused_selected_bg_color @accent_bg_color; +@define-color theme_unfocused_selected_fg_color @accent_fg_color; +@define-color unfocused_insensitive_color @insensitive_bg_color; +@define-color unfocused_borders alpha(currentColor,0.15); diff --git a/libadwaita/libadwaita/stylesheet/defaults-dark.css b/libadwaita/libadwaita/stylesheet/defaults-dark.css new file mode 100644 index 0000000..4f399de --- /dev/null +++ b/libadwaita/libadwaita/stylesheet/defaults-dark.css @@ -0,0 +1,48 @@ +/* GTK NAMED COLORS ---------------- use responsibly! */ +@define-color accent_bg_color @blue_3; +@define-color accent_fg_color white; +@define-color accent_color #78aeed; +@define-color destructive_bg_color @red_4; +@define-color destructive_fg_color white; +@define-color destructive_color #ff7b63; +@define-color success_bg_color @green_5; +@define-color success_fg_color white; +@define-color success_color @green_1; +@define-color warning_bg_color #cd9309; +@define-color warning_fg_color rgba(0, 0, 0, 0.8); +@define-color warning_color @yellow_2; +@define-color error_bg_color @red_4; +@define-color error_fg_color white; +@define-color error_color #ff7b63; +@define-color window_bg_color #242424; +@define-color window_fg_color white; +@define-color view_bg_color #1e1e1e; +@define-color view_fg_color white; +@define-color headerbar_bg_color #303030; +@define-color headerbar_fg_color white; +@define-color headerbar_border_color white; +@define-color headerbar_backdrop_color @window_bg_color; +@define-color headerbar_shade_color rgba(0, 0, 0, 0.36); +@define-color headerbar_darker_shade_color rgba(0, 0, 0, 0.9); +@define-color sidebar_bg_color #303030; +@define-color sidebar_fg_color white; +@define-color sidebar_backdrop_color #2a2a2a; +@define-color sidebar_shade_color rgba(0, 0, 0, 0.25); +@define-color sidebar_border_color rgba(0, 0, 0, 0.36); +@define-color secondary_sidebar_bg_color #2a2a2a; +@define-color secondary_sidebar_fg_color white; +@define-color secondary_sidebar_backdrop_color #272727; +@define-color secondary_sidebar_shade_color rgba(0, 0, 0, 0.25); +@define-color secondary_sidebar_border_color rgba(0, 0, 0, 0.36); +@define-color card_bg_color rgba(255, 255, 255, 0.08); +@define-color card_fg_color white; +@define-color card_shade_color rgba(0, 0, 0, 0.36); +@define-color dialog_bg_color #383838; +@define-color dialog_fg_color white; +@define-color popover_bg_color #383838; +@define-color popover_fg_color white; +@define-color popover_shade_color rgba(0, 0, 0, 0.25); +@define-color thumbnail_bg_color #383838; +@define-color thumbnail_fg_color white; +@define-color shade_color rgba(0, 0, 0, 0.25); +@define-color scrollbar_outline_color rgba(0, 0, 0, 0.5); diff --git a/libadwaita/libadwaita/stylesheet/defaults-light.css b/libadwaita/libadwaita/stylesheet/defaults-light.css new file mode 100644 index 0000000..6eaf89c --- /dev/null +++ b/libadwaita/libadwaita/stylesheet/defaults-light.css @@ -0,0 +1,48 @@ +/* GTK NAMED COLORS ---------------- use responsibly! */ +@define-color accent_bg_color @blue_3; +@define-color accent_fg_color white; +@define-color accent_color @blue_4; +@define-color destructive_bg_color @red_3; +@define-color destructive_fg_color white; +@define-color destructive_color @red_4; +@define-color success_bg_color @green_4; +@define-color success_fg_color white; +@define-color success_color #1b8553; +@define-color warning_bg_color @yellow_5; +@define-color warning_fg_color rgba(0, 0, 0, 0.8); +@define-color warning_color #9c6e03; +@define-color error_bg_color @red_3; +@define-color error_fg_color white; +@define-color error_color @red_4; +@define-color window_bg_color #fafafa; +@define-color window_fg_color rgba(0, 0, 0, 0.8); +@define-color view_bg_color #ffffff; +@define-color view_fg_color rgba(0, 0, 0, 0.8); +@define-color headerbar_bg_color #ffffff; +@define-color headerbar_fg_color rgba(0, 0, 0, 0.8); +@define-color headerbar_border_color rgba(0, 0, 0, 0.8); +@define-color headerbar_backdrop_color @window_bg_color; +@define-color headerbar_shade_color rgba(0, 0, 0, 0.12); +@define-color headerbar_darker_shade_color rgba(0, 0, 0, 0.12); +@define-color sidebar_bg_color #ebebeb; +@define-color sidebar_fg_color rgba(0, 0, 0, 0.8); +@define-color sidebar_backdrop_color #f2f2f2; +@define-color sidebar_shade_color rgba(0, 0, 0, 0.07); +@define-color sidebar_border_color rgba(0, 0, 0, 0.07); +@define-color secondary_sidebar_bg_color #f3f3f3; +@define-color secondary_sidebar_fg_color rgba(0, 0, 0, 0.8); +@define-color secondary_sidebar_backdrop_color #f6f6f6; +@define-color secondary_sidebar_shade_color rgba(0, 0, 0, 0.07); +@define-color secondary_sidebar_border_color rgba(0, 0, 0, 0.07); +@define-color card_bg_color #ffffff; +@define-color card_fg_color rgba(0, 0, 0, 0.8); +@define-color card_shade_color rgba(0, 0, 0, 0.07); +@define-color dialog_bg_color #fafafa; +@define-color dialog_fg_color rgba(0, 0, 0, 0.8); +@define-color popover_bg_color #ffffff; +@define-color popover_fg_color rgba(0, 0, 0, 0.8); +@define-color popover_shade_color rgba(0, 0, 0, 0.07); +@define-color thumbnail_bg_color #ffffff; +@define-color thumbnail_fg_color rgba(0, 0, 0, 0.8); +@define-color shade_color rgba(0, 0, 0, 0.07); +@define-color scrollbar_outline_color white; diff --git a/libadwaita/manifest b/libadwaita/manifest new file mode 100644 index 0000000..1875775 --- /dev/null +++ b/libadwaita/manifest @@ -0,0 +1,48 @@ +: 1 +name: libadwaita +version: 1.5.0 +language: c +summary: adwaita C library +license: LGPL-2.0-or-later ; GNU Library General Public License v2 or later +package-description-file: PACKAGE-README.md +url: https://gitlab.gnome.org/GNOME/libadwaita +doc-url: https://gnome.pages.gitlab.gnome.org/libadwaita/doc/ +email: alice@gnome.org +package-url: https://github.com/build2-packaging/libadwaita +package-email: packaging@build2.org ; Mailing list. +depends: * build2 >= 0.16.0 +depends: * bpkg >= 0.16.0 + +# Required; otherwise, bdep will search for them in the system package +# repository but will disregard the --sys-install option. +# +# NOTE: +# +# Boris emphasized on Slack that this shouldn't be required. In fact, build2 CI +# will honor the --sys-install option even without these prerequisites. That +# said, when trying the same procedure locally, we encounter the same flawed +# behavior mentioned earlier. +# +depends: gtk4-devel +depends: glib2-devel +depends: appstream-devel + +# CI builds and binary distribution packages. +# +# NOTE: dbus-devel and dbus-x11 are required solely for executing GTK tests. +# +builds: none +bindist-fedora-builds: bindist +bindist-fedora-build-include: linux_fedora_40-** +bindist-fedora-build-exclude: ** +bindist-fedora-build-config: +\ ++bpkg.bindist.fedora: ++bbot.bindist.upload: +b.create:config.c.std=c17 +sys:gtk4-devel +sys:glib2-devel +sys:appstream-devel +sys:dbus-x11 +sys:dbus-devel +\ diff --git a/libadwaita/tests/.gitignore b/libadwaita/tests/.gitignore new file mode 100644 index 0000000..d565038 --- /dev/null +++ b/libadwaita/tests/.gitignore @@ -0,0 +1,3 @@ +# Test executables. +# +driver diff --git a/libadwaita/tests/about-window/adwaita-test-resources.c b/libadwaita/tests/about-window/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/about-window/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/about-window/adwaita-test-resources.h b/libadwaita/tests/about-window/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/about-window/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/about-window/buildfile b/libadwaita/tests/about-window/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/about-window/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/about-window/test-about-window.c b/libadwaita/tests/about-window/test-about-window.c new file mode 120000 index 0000000..66c03b5 --- /dev/null +++ b/libadwaita/tests/about-window/test-about-window.c @@ -0,0 +1 @@ +../../../upstream/tests/test-about-window.c \ No newline at end of file diff --git a/libadwaita/tests/action-row/adwaita-test-resources.c b/libadwaita/tests/action-row/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/action-row/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/action-row/adwaita-test-resources.h b/libadwaita/tests/action-row/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/action-row/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/action-row/buildfile b/libadwaita/tests/action-row/buildfile new file mode 100644 index 0000000..732def9 --- /dev/null +++ b/libadwaita/tests/action-row/buildfile @@ -0,0 +1,10 @@ +# not ok /Adwaita/ActionRow/title_lines - FATAL-CRITICAL: adw_action_row_set_title_lines: assertion 'title_lines >= 0' failed +# Bail out! + +./: + +# import libs = libadwaita%lib{adwaita} + +# exe{driver}: {h c}{**} $libs testscript{**} + +# c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/action-row/test-action-row.c b/libadwaita/tests/action-row/test-action-row.c new file mode 120000 index 0000000..0485adf --- /dev/null +++ b/libadwaita/tests/action-row/test-action-row.c @@ -0,0 +1 @@ +../../../upstream/tests/test-action-row.c \ No newline at end of file diff --git a/libadwaita/tests/animation-target/adwaita-test-resources.c b/libadwaita/tests/animation-target/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/animation-target/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/animation-target/adwaita-test-resources.h b/libadwaita/tests/animation-target/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/animation-target/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/animation-target/buildfile b/libadwaita/tests/animation-target/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/animation-target/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/animation-target/test-animation-target.c b/libadwaita/tests/animation-target/test-animation-target.c new file mode 120000 index 0000000..1c09705 --- /dev/null +++ b/libadwaita/tests/animation-target/test-animation-target.c @@ -0,0 +1 @@ +../../../upstream/tests/test-animation-target.c \ No newline at end of file diff --git a/libadwaita/tests/animation/adwaita-test-resources.c b/libadwaita/tests/animation/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/animation/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/animation/adwaita-test-resources.h b/libadwaita/tests/animation/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/animation/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/animation/buildfile b/libadwaita/tests/animation/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/animation/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/animation/test-animation.c b/libadwaita/tests/animation/test-animation.c new file mode 120000 index 0000000..578bfae --- /dev/null +++ b/libadwaita/tests/animation/test-animation.c @@ -0,0 +1 @@ +../../../upstream/tests/test-animation.c \ No newline at end of file diff --git a/libadwaita/tests/application-window/adwaita-test-resources.c b/libadwaita/tests/application-window/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/application-window/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/application-window/adwaita-test-resources.h b/libadwaita/tests/application-window/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/application-window/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/application-window/buildfile b/libadwaita/tests/application-window/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/application-window/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/application-window/test-application-window.c b/libadwaita/tests/application-window/test-application-window.c new file mode 120000 index 0000000..5a646ee --- /dev/null +++ b/libadwaita/tests/application-window/test-application-window.c @@ -0,0 +1 @@ +../../../upstream/tests/test-application-window.c \ No newline at end of file diff --git a/libadwaita/tests/avatar/adwaita-test-resources.c b/libadwaita/tests/avatar/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/avatar/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/avatar/adwaita-test-resources.h b/libadwaita/tests/avatar/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/avatar/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/avatar/buildfile b/libadwaita/tests/avatar/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/avatar/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/avatar/test-avatar.c b/libadwaita/tests/avatar/test-avatar.c new file mode 120000 index 0000000..96b7839 --- /dev/null +++ b/libadwaita/tests/avatar/test-avatar.c @@ -0,0 +1 @@ +../../../upstream/tests/test-avatar.c \ No newline at end of file diff --git a/libadwaita/tests/banner/adwaita-test-resources.c b/libadwaita/tests/banner/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/banner/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/banner/adwaita-test-resources.h b/libadwaita/tests/banner/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/banner/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/banner/buildfile b/libadwaita/tests/banner/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/banner/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/banner/test-banner.c b/libadwaita/tests/banner/test-banner.c new file mode 120000 index 0000000..bdfb65d --- /dev/null +++ b/libadwaita/tests/banner/test-banner.c @@ -0,0 +1 @@ +../../../upstream/tests/test-banner.c \ No newline at end of file diff --git a/libadwaita/tests/bin/adwaita-test-resources.c b/libadwaita/tests/bin/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/bin/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/bin/adwaita-test-resources.h b/libadwaita/tests/bin/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/bin/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/bin/buildfile b/libadwaita/tests/bin/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/bin/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/bin/test-bin.c b/libadwaita/tests/bin/test-bin.c new file mode 120000 index 0000000..32fc1c8 --- /dev/null +++ b/libadwaita/tests/bin/test-bin.c @@ -0,0 +1 @@ +../../../upstream/tests/test-bin.c \ No newline at end of file diff --git a/libadwaita/tests/breakpoint-bin/adwaita-test-resources.c b/libadwaita/tests/breakpoint-bin/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/breakpoint-bin/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/breakpoint-bin/adwaita-test-resources.h b/libadwaita/tests/breakpoint-bin/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/breakpoint-bin/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/breakpoint-bin/buildfile b/libadwaita/tests/breakpoint-bin/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/breakpoint-bin/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/breakpoint-bin/test-breakpoint-bin.c b/libadwaita/tests/breakpoint-bin/test-breakpoint-bin.c new file mode 120000 index 0000000..2acd898 --- /dev/null +++ b/libadwaita/tests/breakpoint-bin/test-breakpoint-bin.c @@ -0,0 +1 @@ +../../../upstream/tests/test-breakpoint-bin.c \ No newline at end of file diff --git a/libadwaita/tests/breakpoint/adwaita-test-resources.c b/libadwaita/tests/breakpoint/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/breakpoint/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/breakpoint/adwaita-test-resources.h b/libadwaita/tests/breakpoint/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/breakpoint/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/breakpoint/buildfile b/libadwaita/tests/breakpoint/buildfile new file mode 100644 index 0000000..5829e8a --- /dev/null +++ b/libadwaita/tests/breakpoint/buildfile @@ -0,0 +1,10 @@ +# GLib-CRITICAL **: 20:26:29.549: Did not see expected message Adwaita-CRITICAL +# **: *Unable to parse condition* + +./: + +# import libs = libadwaita%lib{adwaita} + +# exe{driver}: {h c}{**} $libs testscript{**} + +# c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/breakpoint/test-breakpoint.c b/libadwaita/tests/breakpoint/test-breakpoint.c new file mode 120000 index 0000000..ef833ec --- /dev/null +++ b/libadwaita/tests/breakpoint/test-breakpoint.c @@ -0,0 +1 @@ +../../../upstream/tests/test-breakpoint.c \ No newline at end of file diff --git a/libadwaita/tests/build/.gitignore b/libadwaita/tests/build/.gitignore new file mode 100644 index 0000000..974e01d --- /dev/null +++ b/libadwaita/tests/build/.gitignore @@ -0,0 +1,4 @@ +/config.build +/root/ +/bootstrap/ +build/ diff --git a/libadwaita/tests/build/bootstrap.build b/libadwaita/tests/build/bootstrap.build new file mode 100644 index 0000000..a07b5ea --- /dev/null +++ b/libadwaita/tests/build/bootstrap.build @@ -0,0 +1,5 @@ +project = # Unnamed tests subproject. + +using config +using test +using dist diff --git a/libadwaita/tests/build/root.build b/libadwaita/tests/build/root.build new file mode 100644 index 0000000..3b975e6 --- /dev/null +++ b/libadwaita/tests/build/root.build @@ -0,0 +1,12 @@ +using c + +h{*}: extension = h +c{*}: extension = c + +# Every exe{} in this subproject is by default a test. +# +exe{*}: test = true + +# The test target for cross-testing (running tests under Wine, etc). +# +test.target = $c.target diff --git a/libadwaita/tests/buildfile b/libadwaita/tests/buildfile new file mode 100644 index 0000000..aeeab15 --- /dev/null +++ b/libadwaita/tests/buildfile @@ -0,0 +1 @@ +./: {*/ -build/} diff --git a/libadwaita/tests/button-content/adwaita-test-resources.c b/libadwaita/tests/button-content/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/button-content/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/button-content/adwaita-test-resources.h b/libadwaita/tests/button-content/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/button-content/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/button-content/buildfile b/libadwaita/tests/button-content/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/button-content/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/button-content/test-button-content.c b/libadwaita/tests/button-content/test-button-content.c new file mode 120000 index 0000000..799d764 --- /dev/null +++ b/libadwaita/tests/button-content/test-button-content.c @@ -0,0 +1 @@ +../../../upstream/tests/test-button-content.c \ No newline at end of file diff --git a/libadwaita/tests/carousel-indicator-dots/adwaita-test-resources.c b/libadwaita/tests/carousel-indicator-dots/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/carousel-indicator-dots/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/carousel-indicator-dots/adwaita-test-resources.h b/libadwaita/tests/carousel-indicator-dots/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/carousel-indicator-dots/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/carousel-indicator-dots/buildfile b/libadwaita/tests/carousel-indicator-dots/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/carousel-indicator-dots/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/carousel-indicator-dots/test-carousel-indicator-dots.c b/libadwaita/tests/carousel-indicator-dots/test-carousel-indicator-dots.c new file mode 120000 index 0000000..6cdfa7b --- /dev/null +++ b/libadwaita/tests/carousel-indicator-dots/test-carousel-indicator-dots.c @@ -0,0 +1 @@ +../../../upstream/tests/test-carousel-indicator-dots.c \ No newline at end of file diff --git a/libadwaita/tests/carousel-indicator-lines/adwaita-test-resources.c b/libadwaita/tests/carousel-indicator-lines/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/carousel-indicator-lines/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/carousel-indicator-lines/adwaita-test-resources.h b/libadwaita/tests/carousel-indicator-lines/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/carousel-indicator-lines/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/carousel-indicator-lines/buildfile b/libadwaita/tests/carousel-indicator-lines/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/carousel-indicator-lines/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/carousel-indicator-lines/test-carousel-indicator-lines.c b/libadwaita/tests/carousel-indicator-lines/test-carousel-indicator-lines.c new file mode 120000 index 0000000..a3e9c43 --- /dev/null +++ b/libadwaita/tests/carousel-indicator-lines/test-carousel-indicator-lines.c @@ -0,0 +1 @@ +../../../upstream/tests/test-carousel-indicator-lines.c \ No newline at end of file diff --git a/libadwaita/tests/carousel/adwaita-test-resources.c b/libadwaita/tests/carousel/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/carousel/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/carousel/adwaita-test-resources.h b/libadwaita/tests/carousel/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/carousel/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/carousel/buildfile b/libadwaita/tests/carousel/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/carousel/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/carousel/test-carousel.c b/libadwaita/tests/carousel/test-carousel.c new file mode 120000 index 0000000..0e98baf --- /dev/null +++ b/libadwaita/tests/carousel/test-carousel.c @@ -0,0 +1 @@ +../../../upstream/tests/test-carousel.c \ No newline at end of file diff --git a/libadwaita/tests/combo-row/adwaita-test-resources.c b/libadwaita/tests/combo-row/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/combo-row/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/combo-row/adwaita-test-resources.h b/libadwaita/tests/combo-row/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/combo-row/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/combo-row/buildfile b/libadwaita/tests/combo-row/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/combo-row/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/combo-row/test-combo-row.c b/libadwaita/tests/combo-row/test-combo-row.c new file mode 120000 index 0000000..868f454 --- /dev/null +++ b/libadwaita/tests/combo-row/test-combo-row.c @@ -0,0 +1 @@ +../../../upstream/tests/test-combo-row.c \ No newline at end of file diff --git a/libadwaita/tests/easing/adwaita-test-resources.c b/libadwaita/tests/easing/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/easing/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/easing/adwaita-test-resources.h b/libadwaita/tests/easing/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/easing/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/easing/buildfile b/libadwaita/tests/easing/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/easing/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/easing/test-easing.c b/libadwaita/tests/easing/test-easing.c new file mode 120000 index 0000000..cdfadec --- /dev/null +++ b/libadwaita/tests/easing/test-easing.c @@ -0,0 +1 @@ +../../../upstream/tests/test-easing.c \ No newline at end of file diff --git a/libadwaita/tests/entry-row/adwaita-test-resources.c b/libadwaita/tests/entry-row/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/entry-row/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/entry-row/adwaita-test-resources.h b/libadwaita/tests/entry-row/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/entry-row/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/entry-row/buildfile b/libadwaita/tests/entry-row/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/entry-row/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/entry-row/test-entry-row.c b/libadwaita/tests/entry-row/test-entry-row.c new file mode 120000 index 0000000..551f56b --- /dev/null +++ b/libadwaita/tests/entry-row/test-entry-row.c @@ -0,0 +1 @@ +../../../upstream/tests/test-entry-row.c \ No newline at end of file diff --git a/libadwaita/tests/expander-row/adwaita-test-resources.c b/libadwaita/tests/expander-row/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/expander-row/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/expander-row/adwaita-test-resources.h b/libadwaita/tests/expander-row/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/expander-row/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/expander-row/buildfile b/libadwaita/tests/expander-row/buildfile new file mode 100644 index 0000000..9031e8a --- /dev/null +++ b/libadwaita/tests/expander-row/buildfile @@ -0,0 +1,9 @@ +# GLib-CRITICAL **: 20:19:46.063: Did not see expected message Adwaita-CRITICAL **: *already has the same tag* + +./: + +# import libs = libadwaita%lib{adwaita} + +# exe{driver}: {h c}{**} $libs testscript{**} + +# c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/expander-row/test-expander-row.c b/libadwaita/tests/expander-row/test-expander-row.c new file mode 120000 index 0000000..4796186 --- /dev/null +++ b/libadwaita/tests/expander-row/test-expander-row.c @@ -0,0 +1 @@ +../../../upstream/tests/test-expander-row.c \ No newline at end of file diff --git a/libadwaita/tests/flap/adwaita-test-resources.c b/libadwaita/tests/flap/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/flap/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/flap/adwaita-test-resources.h b/libadwaita/tests/flap/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/flap/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/flap/buildfile b/libadwaita/tests/flap/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/flap/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/flap/test-flap.c b/libadwaita/tests/flap/test-flap.c new file mode 120000 index 0000000..2ad1bc6 --- /dev/null +++ b/libadwaita/tests/flap/test-flap.c @@ -0,0 +1 @@ +../../../upstream/tests/test-flap.c \ No newline at end of file diff --git a/libadwaita/tests/header-bar/adwaita-test-resources.c b/libadwaita/tests/header-bar/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/header-bar/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/header-bar/adwaita-test-resources.h b/libadwaita/tests/header-bar/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/header-bar/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/header-bar/buildfile b/libadwaita/tests/header-bar/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/header-bar/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/header-bar/test-header-bar.c b/libadwaita/tests/header-bar/test-header-bar.c new file mode 120000 index 0000000..05ad82f --- /dev/null +++ b/libadwaita/tests/header-bar/test-header-bar.c @@ -0,0 +1 @@ +../../../upstream/tests/test-header-bar.c \ No newline at end of file diff --git a/libadwaita/tests/leaflet/adwaita-test-resources.c b/libadwaita/tests/leaflet/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/leaflet/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/leaflet/adwaita-test-resources.h b/libadwaita/tests/leaflet/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/leaflet/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/leaflet/buildfile b/libadwaita/tests/leaflet/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/leaflet/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/leaflet/test-leaflet.c b/libadwaita/tests/leaflet/test-leaflet.c new file mode 120000 index 0000000..e7c8172 --- /dev/null +++ b/libadwaita/tests/leaflet/test-leaflet.c @@ -0,0 +1 @@ +../../../upstream/tests/test-leaflet.c \ No newline at end of file diff --git a/libadwaita/tests/message-dialog/adwaita-test-resources.c b/libadwaita/tests/message-dialog/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/message-dialog/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/message-dialog/adwaita-test-resources.h b/libadwaita/tests/message-dialog/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/message-dialog/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/message-dialog/buildfile b/libadwaita/tests/message-dialog/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/message-dialog/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/message-dialog/test-message-dialog.c b/libadwaita/tests/message-dialog/test-message-dialog.c new file mode 120000 index 0000000..5fe9183 --- /dev/null +++ b/libadwaita/tests/message-dialog/test-message-dialog.c @@ -0,0 +1 @@ +../../../upstream/tests/test-message-dialog.c \ No newline at end of file diff --git a/libadwaita/tests/navigation-split-view/adwaita-test-resources.c b/libadwaita/tests/navigation-split-view/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/navigation-split-view/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/navigation-split-view/adwaita-test-resources.h b/libadwaita/tests/navigation-split-view/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/navigation-split-view/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/navigation-split-view/buildfile b/libadwaita/tests/navigation-split-view/buildfile new file mode 100644 index 0000000..9031e8a --- /dev/null +++ b/libadwaita/tests/navigation-split-view/buildfile @@ -0,0 +1,9 @@ +# GLib-CRITICAL **: 20:19:46.063: Did not see expected message Adwaita-CRITICAL **: *already has the same tag* + +./: + +# import libs = libadwaita%lib{adwaita} + +# exe{driver}: {h c}{**} $libs testscript{**} + +# c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/navigation-split-view/test-navigation-split-view.c b/libadwaita/tests/navigation-split-view/test-navigation-split-view.c new file mode 120000 index 0000000..fdc9321 --- /dev/null +++ b/libadwaita/tests/navigation-split-view/test-navigation-split-view.c @@ -0,0 +1 @@ +../../../upstream/tests/test-navigation-split-view.c \ No newline at end of file diff --git a/libadwaita/tests/navigation-view/adwaita-test-resources.c b/libadwaita/tests/navigation-view/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/navigation-view/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/navigation-view/adwaita-test-resources.h b/libadwaita/tests/navigation-view/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/navigation-view/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/navigation-view/buildfile b/libadwaita/tests/navigation-view/buildfile new file mode 100644 index 0000000..9031e8a --- /dev/null +++ b/libadwaita/tests/navigation-view/buildfile @@ -0,0 +1,9 @@ +# GLib-CRITICAL **: 20:19:46.063: Did not see expected message Adwaita-CRITICAL **: *already has the same tag* + +./: + +# import libs = libadwaita%lib{adwaita} + +# exe{driver}: {h c}{**} $libs testscript{**} + +# c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/navigation-view/test-navigation-view.c b/libadwaita/tests/navigation-view/test-navigation-view.c new file mode 120000 index 0000000..cd22fea --- /dev/null +++ b/libadwaita/tests/navigation-view/test-navigation-view.c @@ -0,0 +1 @@ +../../../upstream/tests/test-navigation-view.c \ No newline at end of file diff --git a/libadwaita/tests/overlay-split-view/adwaita-test-resources.c b/libadwaita/tests/overlay-split-view/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/overlay-split-view/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/overlay-split-view/adwaita-test-resources.h b/libadwaita/tests/overlay-split-view/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/overlay-split-view/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/overlay-split-view/buildfile b/libadwaita/tests/overlay-split-view/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/overlay-split-view/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/overlay-split-view/test-overlay-split-view.c b/libadwaita/tests/overlay-split-view/test-overlay-split-view.c new file mode 120000 index 0000000..e060f4c --- /dev/null +++ b/libadwaita/tests/overlay-split-view/test-overlay-split-view.c @@ -0,0 +1 @@ +../../../upstream/tests/test-overlay-split-view.c \ No newline at end of file diff --git a/libadwaita/tests/password-entry-row/adwaita-test-resources.c b/libadwaita/tests/password-entry-row/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/password-entry-row/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/password-entry-row/adwaita-test-resources.h b/libadwaita/tests/password-entry-row/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/password-entry-row/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/password-entry-row/buildfile b/libadwaita/tests/password-entry-row/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/password-entry-row/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/password-entry-row/test-password-entry-row.c b/libadwaita/tests/password-entry-row/test-password-entry-row.c new file mode 120000 index 0000000..5601866 --- /dev/null +++ b/libadwaita/tests/password-entry-row/test-password-entry-row.c @@ -0,0 +1 @@ +../../../upstream/tests/test-password-entry-row.c \ No newline at end of file diff --git a/libadwaita/tests/preferences-group/adwaita-test-resources.c b/libadwaita/tests/preferences-group/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/preferences-group/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/preferences-group/adwaita-test-resources.h b/libadwaita/tests/preferences-group/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/preferences-group/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/preferences-group/buildfile b/libadwaita/tests/preferences-group/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/preferences-group/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/preferences-group/test-preferences-group.c b/libadwaita/tests/preferences-group/test-preferences-group.c new file mode 120000 index 0000000..7958f6e --- /dev/null +++ b/libadwaita/tests/preferences-group/test-preferences-group.c @@ -0,0 +1 @@ +../../../upstream/tests/test-preferences-group.c \ No newline at end of file diff --git a/libadwaita/tests/preferences-page/adwaita-test-resources.c b/libadwaita/tests/preferences-page/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/preferences-page/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/preferences-page/adwaita-test-resources.h b/libadwaita/tests/preferences-page/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/preferences-page/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/preferences-page/buildfile b/libadwaita/tests/preferences-page/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/preferences-page/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/preferences-page/test-preferences-page.c b/libadwaita/tests/preferences-page/test-preferences-page.c new file mode 120000 index 0000000..705caf5 --- /dev/null +++ b/libadwaita/tests/preferences-page/test-preferences-page.c @@ -0,0 +1 @@ +../../../upstream/tests/test-preferences-page.c \ No newline at end of file diff --git a/libadwaita/tests/preferences-row/adwaita-test-resources.c b/libadwaita/tests/preferences-row/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/preferences-row/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/preferences-row/adwaita-test-resources.h b/libadwaita/tests/preferences-row/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/preferences-row/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/preferences-row/buildfile b/libadwaita/tests/preferences-row/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/preferences-row/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/preferences-row/test-preferences-row.c b/libadwaita/tests/preferences-row/test-preferences-row.c new file mode 120000 index 0000000..41c2246 --- /dev/null +++ b/libadwaita/tests/preferences-row/test-preferences-row.c @@ -0,0 +1 @@ +../../../upstream/tests/test-preferences-row.c \ No newline at end of file diff --git a/libadwaita/tests/preferences-window/adwaita-test-resources.c b/libadwaita/tests/preferences-window/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/preferences-window/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/preferences-window/adwaita-test-resources.h b/libadwaita/tests/preferences-window/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/preferences-window/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/preferences-window/buildfile b/libadwaita/tests/preferences-window/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/preferences-window/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/preferences-window/test-preferences-window.c b/libadwaita/tests/preferences-window/test-preferences-window.c new file mode 120000 index 0000000..3ab836e --- /dev/null +++ b/libadwaita/tests/preferences-window/test-preferences-window.c @@ -0,0 +1 @@ +../../../upstream/tests/test-preferences-window.c \ No newline at end of file diff --git a/libadwaita/tests/spin-row/adwaita-test-resources.c b/libadwaita/tests/spin-row/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/spin-row/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/spin-row/adwaita-test-resources.h b/libadwaita/tests/spin-row/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/spin-row/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/spin-row/buildfile b/libadwaita/tests/spin-row/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/spin-row/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/spin-row/test-spin-row.c b/libadwaita/tests/spin-row/test-spin-row.c new file mode 120000 index 0000000..a6d9d16 --- /dev/null +++ b/libadwaita/tests/spin-row/test-spin-row.c @@ -0,0 +1 @@ +../../../upstream/tests/test-spin-row.c \ No newline at end of file diff --git a/libadwaita/tests/split-button/adwaita-test-resources.c b/libadwaita/tests/split-button/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/split-button/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/split-button/adwaita-test-resources.h b/libadwaita/tests/split-button/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/split-button/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/split-button/buildfile b/libadwaita/tests/split-button/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/split-button/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/split-button/test-split-button.c b/libadwaita/tests/split-button/test-split-button.c new file mode 120000 index 0000000..b1fc277 --- /dev/null +++ b/libadwaita/tests/split-button/test-split-button.c @@ -0,0 +1 @@ +../../../upstream/tests/test-split-button.c \ No newline at end of file diff --git a/libadwaita/tests/squeezer/adwaita-test-resources.c b/libadwaita/tests/squeezer/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/squeezer/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/squeezer/adwaita-test-resources.h b/libadwaita/tests/squeezer/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/squeezer/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/squeezer/buildfile b/libadwaita/tests/squeezer/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/squeezer/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/squeezer/test-squeezer.c b/libadwaita/tests/squeezer/test-squeezer.c new file mode 120000 index 0000000..7855de8 --- /dev/null +++ b/libadwaita/tests/squeezer/test-squeezer.c @@ -0,0 +1 @@ +../../../upstream/tests/test-squeezer.c \ No newline at end of file diff --git a/libadwaita/tests/status-page/adwaita-test-resources.c b/libadwaita/tests/status-page/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/status-page/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/status-page/adwaita-test-resources.h b/libadwaita/tests/status-page/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/status-page/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/status-page/buildfile b/libadwaita/tests/status-page/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/status-page/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/status-page/test-status-page.c b/libadwaita/tests/status-page/test-status-page.c new file mode 120000 index 0000000..99e1334 --- /dev/null +++ b/libadwaita/tests/status-page/test-status-page.c @@ -0,0 +1 @@ +../../../upstream/tests/test-status-page.c \ No newline at end of file diff --git a/libadwaita/tests/style-manager/adwaita-test-resources.c b/libadwaita/tests/style-manager/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/style-manager/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/style-manager/adwaita-test-resources.h b/libadwaita/tests/style-manager/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/style-manager/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/style-manager/buildfile b/libadwaita/tests/style-manager/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/style-manager/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/style-manager/test-style-manager.c b/libadwaita/tests/style-manager/test-style-manager.c new file mode 120000 index 0000000..52192da --- /dev/null +++ b/libadwaita/tests/style-manager/test-style-manager.c @@ -0,0 +1 @@ +../../../upstream/tests/test-style-manager.c \ No newline at end of file diff --git a/libadwaita/tests/switch-row/adwaita-test-resources.c b/libadwaita/tests/switch-row/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/switch-row/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/switch-row/adwaita-test-resources.h b/libadwaita/tests/switch-row/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/switch-row/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/switch-row/buildfile b/libadwaita/tests/switch-row/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/switch-row/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/switch-row/test-switch-row.c b/libadwaita/tests/switch-row/test-switch-row.c new file mode 120000 index 0000000..f17dd29 --- /dev/null +++ b/libadwaita/tests/switch-row/test-switch-row.c @@ -0,0 +1 @@ +../../../upstream/tests/test-switch-row.c \ No newline at end of file diff --git a/libadwaita/tests/tab-bar/adwaita-test-resources.c b/libadwaita/tests/tab-bar/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/tab-bar/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/tab-bar/adwaita-test-resources.h b/libadwaita/tests/tab-bar/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/tab-bar/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/tab-bar/buildfile b/libadwaita/tests/tab-bar/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/tab-bar/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/tab-bar/test-tab-bar.c b/libadwaita/tests/tab-bar/test-tab-bar.c new file mode 120000 index 0000000..cd7b3ed --- /dev/null +++ b/libadwaita/tests/tab-bar/test-tab-bar.c @@ -0,0 +1 @@ +../../../upstream/tests/test-tab-bar.c \ No newline at end of file diff --git a/libadwaita/tests/tab-button/adwaita-test-resources.c b/libadwaita/tests/tab-button/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/tab-button/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/tab-button/adwaita-test-resources.h b/libadwaita/tests/tab-button/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/tab-button/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/tab-button/buildfile b/libadwaita/tests/tab-button/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/tab-button/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/tab-button/test-tab-button.c b/libadwaita/tests/tab-button/test-tab-button.c new file mode 120000 index 0000000..5b50ae7 --- /dev/null +++ b/libadwaita/tests/tab-button/test-tab-button.c @@ -0,0 +1 @@ +../../../upstream/tests/test-tab-button.c \ No newline at end of file diff --git a/libadwaita/tests/tab-overview/adwaita-test-resources.c b/libadwaita/tests/tab-overview/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/tab-overview/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/tab-overview/adwaita-test-resources.h b/libadwaita/tests/tab-overview/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/tab-overview/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/tab-overview/buildfile b/libadwaita/tests/tab-overview/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/tab-overview/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/tab-overview/test-tab-overview.c b/libadwaita/tests/tab-overview/test-tab-overview.c new file mode 120000 index 0000000..d0cfd7a --- /dev/null +++ b/libadwaita/tests/tab-overview/test-tab-overview.c @@ -0,0 +1 @@ +../../../upstream/tests/test-tab-overview.c \ No newline at end of file diff --git a/libadwaita/tests/tab-view/adwaita-test-resources.c b/libadwaita/tests/tab-view/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/tab-view/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/tab-view/adwaita-test-resources.h b/libadwaita/tests/tab-view/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/tab-view/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/tab-view/buildfile b/libadwaita/tests/tab-view/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/tab-view/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/tab-view/test-tab-view.c b/libadwaita/tests/tab-view/test-tab-view.c new file mode 120000 index 0000000..b2de938 --- /dev/null +++ b/libadwaita/tests/tab-view/test-tab-view.c @@ -0,0 +1 @@ +../../../upstream/tests/test-tab-view.c \ No newline at end of file diff --git a/libadwaita/tests/timed-animation/adwaita-test-resources.c b/libadwaita/tests/timed-animation/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/timed-animation/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/timed-animation/adwaita-test-resources.h b/libadwaita/tests/timed-animation/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/timed-animation/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/timed-animation/buildfile b/libadwaita/tests/timed-animation/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/timed-animation/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/timed-animation/test-timed-animation.c b/libadwaita/tests/timed-animation/test-timed-animation.c new file mode 120000 index 0000000..9d31c1f --- /dev/null +++ b/libadwaita/tests/timed-animation/test-timed-animation.c @@ -0,0 +1 @@ +../../../upstream/tests/test-timed-animation.c \ No newline at end of file diff --git a/libadwaita/tests/toast-overlay/adwaita-test-resources.c b/libadwaita/tests/toast-overlay/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/toast-overlay/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/toast-overlay/adwaita-test-resources.h b/libadwaita/tests/toast-overlay/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/toast-overlay/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/toast-overlay/buildfile b/libadwaita/tests/toast-overlay/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/toast-overlay/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/toast-overlay/test-toast-overlay.c b/libadwaita/tests/toast-overlay/test-toast-overlay.c new file mode 120000 index 0000000..7d9e368 --- /dev/null +++ b/libadwaita/tests/toast-overlay/test-toast-overlay.c @@ -0,0 +1 @@ +../../../upstream/tests/test-toast-overlay.c \ No newline at end of file diff --git a/libadwaita/tests/toast/adwaita-test-resources.c b/libadwaita/tests/toast/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/toast/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/toast/adwaita-test-resources.h b/libadwaita/tests/toast/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/toast/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/toast/buildfile b/libadwaita/tests/toast/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/toast/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/toast/test-toast.c b/libadwaita/tests/toast/test-toast.c new file mode 120000 index 0000000..656e27f --- /dev/null +++ b/libadwaita/tests/toast/test-toast.c @@ -0,0 +1 @@ +../../../upstream/tests/test-toast.c \ No newline at end of file diff --git a/libadwaita/tests/toolbar-view/adwaita-test-resources.c b/libadwaita/tests/toolbar-view/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/toolbar-view/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/toolbar-view/adwaita-test-resources.h b/libadwaita/tests/toolbar-view/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/toolbar-view/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/toolbar-view/buildfile b/libadwaita/tests/toolbar-view/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/toolbar-view/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/toolbar-view/test-toolbar-view.c b/libadwaita/tests/toolbar-view/test-toolbar-view.c new file mode 120000 index 0000000..44ef3f9 --- /dev/null +++ b/libadwaita/tests/toolbar-view/test-toolbar-view.c @@ -0,0 +1 @@ +../../../upstream/tests/test-toolbar-view.c \ No newline at end of file diff --git a/libadwaita/tests/view-switcher-bar/adwaita-test-resources.c b/libadwaita/tests/view-switcher-bar/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/view-switcher-bar/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/view-switcher-bar/adwaita-test-resources.h b/libadwaita/tests/view-switcher-bar/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/view-switcher-bar/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/view-switcher-bar/buildfile b/libadwaita/tests/view-switcher-bar/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/view-switcher-bar/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/view-switcher-bar/test-view-switcher-bar.c b/libadwaita/tests/view-switcher-bar/test-view-switcher-bar.c new file mode 120000 index 0000000..628a64e --- /dev/null +++ b/libadwaita/tests/view-switcher-bar/test-view-switcher-bar.c @@ -0,0 +1 @@ +../../../upstream/tests/test-view-switcher-bar.c \ No newline at end of file diff --git a/libadwaita/tests/view-switcher/adwaita-test-resources.c b/libadwaita/tests/view-switcher/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/view-switcher/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/view-switcher/adwaita-test-resources.h b/libadwaita/tests/view-switcher/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/view-switcher/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/view-switcher/buildfile b/libadwaita/tests/view-switcher/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/view-switcher/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/view-switcher/test-view-switcher.c b/libadwaita/tests/view-switcher/test-view-switcher.c new file mode 120000 index 0000000..d777482 --- /dev/null +++ b/libadwaita/tests/view-switcher/test-view-switcher.c @@ -0,0 +1 @@ +../../../upstream/tests/test-view-switcher.c \ No newline at end of file diff --git a/libadwaita/tests/window-title/adwaita-test-resources.c b/libadwaita/tests/window-title/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/window-title/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/window-title/adwaita-test-resources.h b/libadwaita/tests/window-title/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/window-title/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/window-title/buildfile b/libadwaita/tests/window-title/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/window-title/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/window-title/test-window-title.c b/libadwaita/tests/window-title/test-window-title.c new file mode 120000 index 0000000..2e08dfb --- /dev/null +++ b/libadwaita/tests/window-title/test-window-title.c @@ -0,0 +1 @@ +../../../upstream/tests/test-window-title.c \ No newline at end of file diff --git a/libadwaita/tests/window/adwaita-test-resources.c b/libadwaita/tests/window/adwaita-test-resources.c new file mode 100644 index 0000000..1bc053f --- /dev/null +++ b/libadwaita/tests/window/adwaita-test-resources.c @@ -0,0 +1,250 @@ +#include + +#if defined (__ELF__) && ( __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)) +# define SECTION __attribute__ ((section (".gresource.test"), aligned (8))) +#else +# define SECTION +#endif + +static const SECTION union { const guint8 data[689]; const double alignment; void * const ptr;} test_resource_data = { + "\107\126\141\162\151\141\156\164\000\000\000\000\000\000\000\000" + "\030\000\000\000\310\000\000\000\000\000\000\050\006\000\000\000" + "\000\000\000\000\000\000\000\000\001\000\000\000\005\000\000\000" + "\005\000\000\000\005\000\000\000\113\120\220\013\004\000\000\000" + "\310\000\000\000\004\000\114\000\314\000\000\000\320\000\000\000" + "\132\271\277\152\005\000\000\000\320\000\000\000\005\000\114\000" + "\330\000\000\000\334\000\000\000\260\267\044\060\000\000\000\000" + "\334\000\000\000\006\000\114\000\344\000\000\000\350\000\000\000" + "\356\322\363\315\001\000\000\000\350\000\000\000\044\000\166\000" + "\020\001\000\000\232\002\000\000\324\265\002\000\377\377\377\377" + "\232\002\000\000\001\000\114\000\234\002\000\000\240\002\000\000" + "\213\045\072\175\002\000\000\000\240\002\000\000\011\000\114\000" + "\254\002\000\000\260\002\000\000\157\162\147\057\002\000\000\000" + "\124\145\163\164\057\000\000\000\003\000\000\000\147\156\157\155" + "\145\057\000\000\005\000\000\000\157\162\147\056\147\156\157\155" + "\145\056\101\144\167\141\151\164\141\061\056\124\145\163\164\056" + "\155\145\164\141\151\156\146\157\056\170\155\154\000\000\000\000" + "\176\003\000\000\001\000\000\000\170\332\225\123\115\157\302\040" + "\030\276\373\053\110\357\055\272\323\262\040\146\063\233\027\067" + "\075\270\263\241\345\135\313\244\100\200\332\355\337\217\176\150" + "\247\316\144\336\340\175\237\017\362\074\201\314\276\112\211\366" + "\140\235\320\152\032\115\222\161\204\100\145\232\013\225\117\243" + "\367\315\113\174\037\315\350\210\144\272\064\132\201\362\310\177" + "\033\230\106\034\334\316\153\023\063\143\244\310\230\017\354\210" + "\216\020\042\202\123\155\363\044\127\272\204\344\221\327\114\170" + "\066\111\066\340\074\301\141\327\100\112\360\214\063\317\266\201" + "\011\312\001\235\317\307\161\160\046\370\142\323\300\215\325\237" + "\220\371\343\154\271\130\057\343\273\144\022\153\033\113\346\301" + "\022\174\016\151\150\222\125\052\053\130\052\341\354\311\202\107" + "\327\236\230\364\030\202\007\166\053\306\141\017\122\033\260\133" + "\305\112\240\233\002\320\342\155\365\372\214\326\235\063\301\147" + "\210\121\303\152\117\275\001\352\042\030\226\026\044\060\007\256" + "\321\037\256\247\125\164\273\326\337\145\126\230\046\346\303\254" + "\111\206\066\242\241\051\364\124\011\311\103\016\107\002\276\140" + "\020\334\133\134\063\034\047\223\033\015\321\112\362\066\376\377" + "\332\036\057\256\313\340\320\133\156\165\145\150\233\350\120\146" + "\067\154\161\225\225\175\211\105\350\314\260\034\042\132\170\157" + "\334\003\306\271\360\222\245\175\233\241\127\334\312\140\051\122" + "\326\045\117\160\240\323\123\231\264\312\275\145\331\016\354\015" + "\102\130\070\127\201\373\113\257\000\151\072\245\040\124\327\365" + "\057\225\017\053\100\161\207\173\032\301\307\257\104\107\077\010" + "\225\045\070\000\050\165\165\141\171\051\057\000\000\000\000\000" + "\101\144\167\141\151\164\141\061\057\000\000\000\001\000\000\000" + "" }; + +static GStaticResource static_resource = { test_resource_data.data, sizeof (test_resource_data.data) - 1 /* nul terminator */, NULL, NULL, NULL }; + +G_GNUC_INTERNAL +GResource *test_get_resource (void); +GResource *test_get_resource (void) +{ + return g_static_resource_get_resource (&static_resource); +} +/* GLIB - Library of useful routines for C programming + * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald + * + * SPDX-License-Identifier: LGPL-2.1-or-later + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, see . + */ + +/* + * Modified by the GLib Team and others 1997-2000. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +#ifndef __G_CONSTRUCTOR_H__ +#define __G_CONSTRUCTOR_H__ + +/* + If G_HAS_CONSTRUCTORS is true then the compiler support *both* constructors and + destructors, in a usable way, including e.g. on library unload. If not you're on + your own. + + Some compilers need #pragma to handle this, which does not work with macros, + so the way you need to use this is (for constructors): + + #ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA + #pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(my_constructor) + #endif + G_DEFINE_CONSTRUCTOR(my_constructor) + static void my_constructor(void) { + ... + } + +*/ + +#ifndef __GTK_DOC_IGNORE__ + +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR(_func) static void __attribute__((constructor)) _func (void); +#define G_DEFINE_DESTRUCTOR(_func) static void __attribute__((destructor)) _func (void); + +#elif defined (_MSC_VER) && (_MSC_VER >= 1500) +/* Visual studio 2008 and later has _Pragma */ + +/* + * Only try to include gslist.h if not already included via glib.h, + * so that items using gconstructor.h outside of GLib (such as + * GResources) continue to build properly. + */ +#ifndef __G_LIB_H__ +#include "gslist.h" +#endif + +#include + +#define G_HAS_CONSTRUCTORS 1 + +/* We do some weird things to avoid the constructors being optimized + * away on VS2015 if WholeProgramOptimization is enabled. First we + * make a reference to the array from the wrapper to make sure its + * references. Then we use a pragma to make sure the wrapper function + * symbol is always included at the link stage. Also, the symbols + * need to be extern (but not dllexport), even though they are not + * really used from another object file. + */ + +/* We need to account for differences between the mangling of symbols + * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed + * with an underscore but symbols on x64/ARM/ARM64 are not. + */ +#ifdef _M_IX86 +#define G_MSVC_SYMBOL_PREFIX "_" +#else +#define G_MSVC_SYMBOL_PREFIX "" +#endif + +#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX) +#define G_DEFINE_DESTRUCTOR(_func) G_MSVC_DTOR (_func, G_MSVC_SYMBOL_PREFIX) + +#define G_MSVC_CTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _wrapper(void); \ + int _func ## _wrapper(void) { _func(); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_wrapper")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _wrapper; + +#define G_MSVC_DTOR(_func,_sym_prefix) \ + static void _func(void); \ + extern int (* _array ## _func)(void); \ + int _func ## _constructor(void); \ + int _func ## _constructor(void) { atexit (_func); g_slist_find (NULL, _array ## _func); return 0; } \ + __pragma(comment(linker,"/include:" _sym_prefix # _func "_constructor")) \ + __pragma(section(".CRT$XCU",read)) \ + __declspec(allocate(".CRT$XCU")) int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined (_MSC_VER) + +#define G_HAS_CONSTRUCTORS 1 + +/* Pre Visual studio 2008 must use #pragma section */ +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _wrapper(void) { _func(); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (*p)(void) = _func ## _wrapper; + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + section(".CRT$XCU",read) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); \ + static int _func ## _constructor(void) { atexit (_func); return 0; } \ + __declspec(allocate(".CRT$XCU")) static int (* _array ## _func)(void) = _func ## _constructor; + +#elif defined(__SUNPRO_C) + +/* This is not tested, but i believe it should work, based on: + * http://opensource.apple.com/source/OpenSSL098/OpenSSL098-35/src/fips/fips_premain.c + */ + +#define G_HAS_CONSTRUCTORS 1 + +#define G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA 1 +#define G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA 1 + +#define G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(_func) \ + init(_func) +#define G_DEFINE_CONSTRUCTOR(_func) \ + static void _func(void); + +#define G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(_func) \ + fini(_func) +#define G_DEFINE_DESTRUCTOR(_func) \ + static void _func(void); + +#else + +/* constructors not supported for this compiler */ + +#endif + +#endif /* __GTK_DOC_IGNORE__ */ +#endif /* __G_CONSTRUCTOR_H__ */ + +#ifdef G_HAS_CONSTRUCTORS + +#ifdef G_DEFINE_CONSTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_CONSTRUCTOR_PRAGMA_ARGS(testresource_constructor) +#endif +G_DEFINE_CONSTRUCTOR(testresource_constructor) +#ifdef G_DEFINE_DESTRUCTOR_NEEDS_PRAGMA +#pragma G_DEFINE_DESTRUCTOR_PRAGMA_ARGS(testresource_destructor) +#endif +G_DEFINE_DESTRUCTOR(testresource_destructor) + +#else +#warning "Constructor not supported on this compiler, linking in resources will not work" +#endif + +static void testresource_constructor (void) +{ + g_static_resource_init (&static_resource); +} + +static void testresource_destructor (void) +{ + g_static_resource_fini (&static_resource); +} diff --git a/libadwaita/tests/window/adwaita-test-resources.h b/libadwaita/tests/window/adwaita-test-resources.h new file mode 100644 index 0000000..ce9de44 --- /dev/null +++ b/libadwaita/tests/window/adwaita-test-resources.h @@ -0,0 +1,7 @@ +#ifndef __RESOURCE_test_H__ +#define __RESOURCE_test_H__ + +#include + +G_GNUC_INTERNAL GResource *test_get_resource (void); +#endif diff --git a/libadwaita/tests/window/buildfile b/libadwaita/tests/window/buildfile new file mode 100644 index 0000000..c4aa652 --- /dev/null +++ b/libadwaita/tests/window/buildfile @@ -0,0 +1,12 @@ +import libs = libadwaita%lib{adwaita} + +# Required dependencies are (currently) not packaged and need to come from the +# system package manager. +# +import libs += gtk4%lib{gtk-4} \ + glib2%lib{glib-2.0} \ + appstream%lib{appstream} + +exe{driver}: {h c}{**} $libs testscript{**} + +c.poptions += -DADWAITA_COMPILATION -DADW_LOG_DOMAIN=\"Adwaita\" diff --git a/libadwaita/tests/window/test-window.c b/libadwaita/tests/window/test-window.c new file mode 120000 index 0000000..479eda6 --- /dev/null +++ b/libadwaita/tests/window/test-window.c @@ -0,0 +1 @@ +../../../upstream/tests/test-window.c \ No newline at end of file diff --git a/packages.manifest b/packages.manifest new file mode 100644 index 0000000..46eb6f7 --- /dev/null +++ b/packages.manifest @@ -0,0 +1,2 @@ +: 1 +location: libadwaita/ diff --git a/upstream b/upstream new file mode 160000 index 0000000..0d70864 --- /dev/null +++ b/upstream @@ -0,0 +1 @@ +Subproject commit 0d708641d83cd86271382a1139ac42a47ac3b542