No project description provided
Project description
Petroglyph Meg file library
MEGA files are a format used by Petroglyph for various games including Star Wars: Empire at War, Universe at War: Earth Assault, Guardians of Graxia, Rise of Immortals, Grey Goo, and Great War: Western Front.
This repo provides a Python Library for working with them. It is a wrapper around a Rust library that does the same thing (crate, repo).
The parsing and encoding is based on the format descriptions provided here by some of the Modders who first enabled Empire at War modding.
Why?
Q: You're like 20 years late to this party. Why make this now?
Mostly for fun. Also because the MEGA file editor produced by Mike Lankamp is a C# GUI intended for Windows and I'm a Linux dev who likes CLI tools.
There are some tweaks I like to apply to all projectiles in Empire at War (e.g. making all lasers faster), and I tend to write scripts to do that rather than hand editing the XML config files. By making this a library, I can write a script that directly extracts and edits files from the game's MEGA files without needing to provide it a pre-extracted bundle of XML "source" files to work with.
How do I use it?
For reading MEGA files, there is a single function, read_meg(mega_file, /, version=None, key=None, iv=None). This takes a single file-like input (must be in binary mode) and
parses the headers. It has optional arguments for version (1, 2, or 3), and the key and
initial vector used for reading encrypted MEGA files. If using encryption Key and IV must
both be bytes and must both have len 16. read_meg returns a list of FileEntry objects.
FileEntry has two properties, name and size which tell the file name and number of
bytes in the file. It provides a read method which attempts to extract the contents of
the file as a bytes object. read only works if the MEGA file is still open. It will
seek to the start of the file contents and read a length matching the file size. If you
prefer to get a range over the file and extract it yourself, you can instead access the
start and end properties.
Entry names use the 'MegPath' type, which is a case-insensitive path name. We restrict
MEGA paths to ASCII-7, so it can always be converted to str. It also implements equality
and order comparisons with str, though be aware that e.g. sorting a list with a mix of
str and MegPath can be problematic since MegPath will be case-insensitive when
comparing to itself or str, but str will be case-sensitive. Don't mix them; the
comparisons with str are provided only for convenience. MegPath can be constructed
from a str. Some validation is applied, like no charcters not valid in Windows file
names are allowed, and paths cannot be rooted or have empty segments.
For building, there is a dict-like MegBuilder. The constructor takes a version argument,
which must be 1, 2, or 3, and an optional pair of key and initial vector for encryption if
you want to enable encryption for V3. The constructor also takes an entries argument to
initialize the builder from a dictionary. It always uses MegPath for the keys. You can
insert any values that are either bytes/bytearray or are readable and seekable files.
It can then be updated like a dict. Any str key passed will automatically be converted
to MegPath for you. Once you have all the files added, you can call build to convert
to a MEGA file. build takes one optional argument, an open binary file to write to. If
you don't provide a file, build will instead build the file as bytes and return that.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file petro_meg-1.0.0.tar.gz.
File metadata
- Download URL: petro_meg-1.0.0.tar.gz
- Upload date:
- Size: 13.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d056b02c56f1b8d1c0b2ad53e7e5d2b7e3687ca47c142beb9c9eed78b782ee2d
|
|
| MD5 |
90e72c2e8d2a59a35ba60b253a3e8b5b
|
|
| BLAKE2b-256 |
f70dfe28acbffd6eddce4a4b2b49f06e18335243b217aa3875c8d6e7b10fbfcd
|
File details
Details for the file petro_meg-1.0.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: petro_meg-1.0.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 393.7 kB
- Tags: PyPy, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ea7aad010362826149271ff2b2c04214609bae14c9be82bbcbf70dff6b981984
|
|
| MD5 |
995346ff22a882cff21e688d3c7bdd99
|
|
| BLAKE2b-256 |
80ff79778148b2a5ab9115e8fa07888f58de6f5e7879c60b5674b9f8314358a2
|
File details
Details for the file petro_meg-1.0.0-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl.
File metadata
- Download URL: petro_meg-1.0.0-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl
- Upload date:
- Size: 420.8 kB
- Tags: PyPy, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a503feffd22ba3185f30329f2e3e8419badd937f22f59a76891be55e5dc412ff
|
|
| MD5 |
d68b27564a1874e393d276ad1b6b9908
|
|
| BLAKE2b-256 |
747c082acb5e72de6cb63d1cb260e35a1b9423724467da995435c412635c99a7
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-win_arm64.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-win_arm64.whl
- Upload date:
- Size: 228.0 kB
- Tags: CPython 3.10+, Windows ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c7a25f53f3918a8c2c24289b533c8312eb98d6cd38f91ec0b253ac20febdf93e
|
|
| MD5 |
44d6acb4c1670fa8412f264b88b22382
|
|
| BLAKE2b-256 |
f3b15fc02eafc151a7145d03b604d7ba0a0d12e66389e79daddda17517e90ea0
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-win_amd64.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-win_amd64.whl
- Upload date:
- Size: 235.2 kB
- Tags: CPython 3.10+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
55b4ea66924c65e5f79c9e99af818b47c37a5a7111fb8e17860eb671b95a1a01
|
|
| MD5 |
c31eab49e2a7626a7f71028a64f274ac
|
|
| BLAKE2b-256 |
b3914a113af21acd9db5ceb7328bc4d0ab03177cc12526bda92d2ccc2900d8fd
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-win32.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-win32.whl
- Upload date:
- Size: 226.2 kB
- Tags: CPython 3.10+, Windows x86
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1ed04592b54f724047b19151eccade274cc78c547e16b964d8c23e8814b69514
|
|
| MD5 |
520925a7ba2e66c6c4789546dae914df
|
|
| BLAKE2b-256 |
6042542e98d7de5e75e0e7f534f8db063b728c4b995855cd83b9594b04c5056c
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 602.5 kB
- Tags: CPython 3.10+, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2691ccf62d62dedce74d946739f35ca00cec47cc634364b312aeda2445e0cee
|
|
| MD5 |
60773688ffb50cf76080530e56cae7cb
|
|
| BLAKE2b-256 |
8c23dc23fb5dbb8bcbc2901f32d3d0fdd641537929ce86589e81dfef619c5b4f
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-musllinux_1_2_i686.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-musllinux_1_2_i686.whl
- Upload date:
- Size: 634.8 kB
- Tags: CPython 3.10+, musllinux: musl 1.2+ i686
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52173247dde903fc1d9aa5639c0a21f625bf1dfef2eb9d2a12a2688f074bca4b
|
|
| MD5 |
44f0be5046659eb230d495f91569abc6
|
|
| BLAKE2b-256 |
d932519a97ce58e55eacd7e6780f8b5405c6c1f14048d2179ce02ddec1af56aa
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-musllinux_1_2_armv7l.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-musllinux_1_2_armv7l.whl
- Upload date:
- Size: 672.4 kB
- Tags: CPython 3.10+, musllinux: musl 1.2+ ARMv7l
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4f48af47846c6505c301d6a404f36938250e7d5e3e9b3fa1ca4a1b67253462c
|
|
| MD5 |
f3c4f5e6e9a15b81998e76c7262c45f5
|
|
| BLAKE2b-256 |
63cb3175ea8e9a759e856376957230d96f698b9654f72589c797f3aad73c3716
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 566.9 kB
- Tags: CPython 3.10+, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
047bc8b148e48f64f06d831ecc97d1db83f78c81fc11727b49291049eb9f6f32
|
|
| MD5 |
3156dbfead28f643690bc0d48fdb0d17
|
|
| BLAKE2b-256 |
f2c72e83a916382b3066ff4f9fdf63aefdcb480234815abfec603189a52df427
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 397.1 kB
- Tags: CPython 3.10+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cf89c292f4826c030837e7a94b9f51c1b4cb2d23c16d9de5beead8f2341af826
|
|
| MD5 |
8995f93c3db10d0c0170be261c574a16
|
|
| BLAKE2b-256 |
c9b46dde192f73de6fc7438da031b90ff4d7fa42271ee2da3e843603af9a27bb
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl
- Upload date:
- Size: 406.7 kB
- Tags: CPython 3.10+, manylinux: glibc 2.17+ s390x
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a08d8dcfe7803f87161b94efe369f2875e88b09ee8faa929e865eeb7a6fdd279
|
|
| MD5 |
521c6cd400c4e5b7f3124de630be7e1a
|
|
| BLAKE2b-256 |
95b7fb50e54cdc7fdf09712c49f26342f72e6cb13ee3fab7a4c319da895633ea
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
- Upload date:
- Size: 530.6 kB
- Tags: CPython 3.10+, manylinux: glibc 2.17+ ppc64le
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
72245bb1d2eafe3d7f1940d965d16a74d465a049db3aa6fbe0de75f1a66f22c7
|
|
| MD5 |
293a602ec6a7eb9ebf0a549a58912b4a
|
|
| BLAKE2b-256 |
05be98544ed7d0b11168601216b4a7997dcabed70954eefb97caf5db9776fe9d
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
- Upload date:
- Size: 397.3 kB
- Tags: CPython 3.10+, manylinux: glibc 2.17+ ARMv7l
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
75fcd18076d0250e6585e46beecfe8eacfe1c0d6c032d6d0027cb8d610216ea0
|
|
| MD5 |
6f5317c0b2d8809f6752bd2b0927b943
|
|
| BLAKE2b-256 |
877396d3ce685b72eb47ff6854e7849a1a24450f0e657453d80ab3e6363c7313
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 390.1 kB
- Tags: CPython 3.10+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e8d7cde8ad6fb0c0988b2323063e73e92c82ed50ada7c43e262f4c47846c575
|
|
| MD5 |
a600b1926616cc8aa6d7a4c313e043e1
|
|
| BLAKE2b-256 |
fd409ba3f83ce23e5bb988b98fc468def196392e0bb8b841a713f1dde2da82b9
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-manylinux_2_5_i686.manylinux1_i686.whl
- Upload date:
- Size: 424.6 kB
- Tags: CPython 3.10+, manylinux: glibc 2.5+ i686
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32b8ee157e8057584a5fc6584acffe1831a3e649c47995e998e93f05108ba6fd
|
|
| MD5 |
3b1f0f52032290cb201d80a9d033f9c5
|
|
| BLAKE2b-256 |
4091f2b9036878e2b062b7baf1f1b5f598875ca7bfe91227dcaa7f13dbbbfb3c
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 345.7 kB
- Tags: CPython 3.10+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aef63b6f607102d3971decfef781f1a7d8655869bd30480f2f88980d7240a027
|
|
| MD5 |
61c26de43392dbbb490d311232d1d638
|
|
| BLAKE2b-256 |
f90d2ff833372fbf74a116b33089360a85175570611ad42688d111123fab235f
|
File details
Details for the file petro_meg-1.0.0-cp310-abi3-macosx_10_12_x86_64.whl.
File metadata
- Download URL: petro_meg-1.0.0-cp310-abi3-macosx_10_12_x86_64.whl
- Upload date:
- Size: 355.7 kB
- Tags: CPython 3.10+, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cbca987dee7586647b9e0f022cee10ffa3814c1ce3f8d9af5e9d5d1c011a6d9
|
|
| MD5 |
cb2d6d28fa58e258bf6898c4172a2d7f
|
|
| BLAKE2b-256 |
3e06a609dc25c8d3a0e52407176834c4c807c4811c1ed3ea9f4256e2010c7152
|