Skip to main content

Python bindings for Objective-LOL

Project description

Objective-LOL Python Bindings

Python bindings for the Objective-LOL programming language - a modern, strongly-typed language inspired by LOLCODE.

Installation

pip install objective-lol

Quick Start

import objective_lol as olol

# Create a VM instance
vm = olol.ObjectiveLOLVM()

# Execute Objective-LOL code
code = """
I CAN HAS STDIO?
HAI ME TEH FUNCSHUN MAIN
    I HAS A VARIABLE X TEH INTEGR ITZ 42
    SAYZ WIT X
KTHXBAI
"""

vm.execute(code)  # Prints: 42

Features

  • Execute Objective-LOL code: Run complete programs or code snippets
  • Python integration: Call Python functions from Objective-LOL and vice versa
  • Type conversion: Automatic conversion between Python and Objective-LOL types
  • Module system: Import and use custom modules
  • Class definitions: Define and use classes from Python

Advanced Usage

Defining Python Functions for Objective-LOL

vm = olol.ObjectiveLOLVM()

def add_numbers(a, b):
    return a + b

vm.define_function("add_numbers", add_numbers)

code = """
I CAN HAS STDIO?
HAI ME TEH FUNCSHUN MAIN
    I HAS A VARIABLE RESULT TEH INTEGR ITZ add_numbers WIT 10 AN WIT 20
    SAYZ WIT RESULT
KTHXBAI
"""

vm.execute(code)  # Prints: 30

Working with Classes

vm = olol.ObjectiveLOLVM()

class Calculator:
    def add(self, x, y):
        return x + y

    def multiply(self, x, y):
        return x * y

vm.define_class(Calculator)

code = """
I CAN HAS STDIO?
HAI ME TEH FUNCSHUN MAIN
    I HAS A VARIABLE CALC TEH Calculator ITZ NEW Calculator
    I HAS A VARIABLE SUM TEH INTEGR ITZ CALC DO add WIT 5 AN WIT 3
    SAYZ WIT SUM
KTHXBAI
"""

vm.execute(code)  # Prints: 8

Type Mapping

Objective-LOL Type Python Type
INTEGR int
DUBBLE float
STRIN str
BOOL bool
NOTHIN None
BUKKIT (array) list
BASKIT (map) dict

Links

License

MIT License

Changelog

[0.0.6] - 2026-04-30

Changed

  • Refactored asyncio threading shims into factory methods (_run_in_loop, _run_blocking, _make_loop_method_wrapper, _make_loop_wrapper) to eliminate duplicated thread+Future patterns
  • Getter and setter registrations now route through the asyncio event loop when one is provided, consistent with method dispatch

[0.0.5] - 2026-04-29

Changed

  • Replaced prefer_async_loop with an explicit asyncio_loop to specify which event loop to use
  • Changed interop of sync Python methods to be called within the asyncio loop, if one is provided
  • Changed interop of async Python methods to require an asyncio loop

[0.0.4] - 2026-04-29

Added

  • Added a mechanism to specify the working directory of the Objective-LOL interpreter from Python at initialization time

Fixed

  • Fixed interop of setting primitive values on Python objects from within Objective-LOL

[0.0.3] - 2026-03-24

Fixed

  • Fixed interop of nested lists and dicts between Python and Objective-LOL

[0.0.2] - 2025-09-16

Changed

  • Modified octal prefix from 0 to 0o

Fixed

  • Fixed a stack corruption crash on Windows by using compatibility function calls with separate goroutines

[0.0.1] - 2025-09-14

Added

  • Initial Python bindings for Objective-LOL interpreter
  • Pre-built wheels for Windows, macOS, and Linux for Python 3.9+

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

objective_lol-0.0.6-cp313-cp313-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.13Windows x86-64

objective_lol-0.0.6-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

objective_lol-0.0.6-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.6-cp313-cp313-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

objective_lol-0.0.6-cp313-cp313-macosx_10_13_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

objective_lol-0.0.6-cp312-cp312-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.12Windows x86-64

objective_lol-0.0.6-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

objective_lol-0.0.6-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.6-cp312-cp312-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

objective_lol-0.0.6-cp312-cp312-macosx_10_13_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

objective_lol-0.0.6-cp311-cp311-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.11Windows x86-64

objective_lol-0.0.6-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

objective_lol-0.0.6-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.6-cp311-cp311-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

objective_lol-0.0.6-cp311-cp311-macosx_10_9_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

objective_lol-0.0.6-cp310-cp310-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.10Windows x86-64

objective_lol-0.0.6-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

objective_lol-0.0.6-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.6-cp310-cp310-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

objective_lol-0.0.6-cp310-cp310-macosx_10_9_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

objective_lol-0.0.6-cp39-cp39-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.9Windows x86-64

objective_lol-0.0.6-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

objective_lol-0.0.6-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (2.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

objective_lol-0.0.6-cp39-cp39-macosx_11_0_arm64.whl (2.6 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

objective_lol-0.0.6-cp39-cp39-macosx_10_9_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file objective_lol-0.0.6-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 3304073a99a2659d805f5b95f6e27cdef00925f9245cb623e3a4161d219fff5e
MD5 f43d9b3ebd506a7605ae680d2872d861
BLAKE2b-256 7fdbfd1f7d775c1d52fec2d57f74ee26f840b0ddd8e8bb11844dbc4391208dfb

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 92a2978915a81531b368adb551d67814eb009e3dc6b4ea62e877855c66043a88
MD5 8d04c6f75d837613084176e29747eb78
BLAKE2b-256 09f20387b89870b279d8342dcad8145949619b0b05213078459588f352699361

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 948b2bb4b954cc845ec2e074b94ab5249d5f329a924322e896cf56e27e6717ba
MD5 a579e6e8f5bb75790b2d18d7ca88ef15
BLAKE2b-256 1e5851e92c8a4240f003b43dd166f3411bede5e2ca1b01d5eb0f9fc40f8fcd12

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5faba2649422bb9276ed27f714bcae0363af71d63a4fa6d623850ed058c2e815
MD5 358ff912aa61471ef8b9bb9a559246f7
BLAKE2b-256 1e44bd0d3b78f55f5cc49d02f1fd176a3e5b5b3748265e2cd8f57da78398d555

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 ec20fcc23fd247e3c6a4efd6d81085ba8f4a348bdd4344fe66379d87e82ee685
MD5 67900ea9ee971376d898221ef6d5b245
BLAKE2b-256 ea5811d92cf72b9d98a69ef9789e503595ec4d5e9c6f14d4711bfae4fd3fee30

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ea9c4a8d3550a55bf149b313b45eb1f8783bed9d3005900cb2fbae6351684100
MD5 66ab668b4da38ee6d7072286deb0b6f6
BLAKE2b-256 0a4939472779b60ba830ae96aec4eadc67bc6f45055737e4c6c52a3824d35c20

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a9b65a8dfc2e5d089220ee8a7bb0be38c07174de9c27e1debc1bfb3598d786bf
MD5 af222f473f11e6b80d5d67f38acab5e9
BLAKE2b-256 80e9c4a7d6082e71e7bfaea7c9c49683dd66f961a1bccfabb7a56af7ad58a146

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 66f78554773a57b01b86ad109a0e61983815ec7e2e7991171e8b6ae0924a8787
MD5 8b0181b562f972323ea846c1b9252cef
BLAKE2b-256 fe1e771f179f83bbdfffbd0be0d9ac61466923954c09eb641381f96869f7f5f0

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c632818851ec417315615695de1b93db527a8cc32ca5676e969150953edc2228
MD5 c63d806d62c34ec02e7dd9cc200f30cb
BLAKE2b-256 c01c9a26098dbc8a621ff30d01cd3a7a7eadd2aa95b89188f8877feb1a480795

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 6fe755a7452e3227ff0d9e565b6ecdb63d13dc98ef1679c00b59583f3b4af18f
MD5 2c154b9e049609196b10b7ece7612361
BLAKE2b-256 32529de92c660ad0c03f1e71e80947bf871f4d440aaf18378dbd6838a272df9d

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 40974bf20295bd8eb6af775598b5a27cb74f38693f77e11dbd75a1652f267964
MD5 c7fd51a4add5b94ba9ede8bffd2cf246
BLAKE2b-256 683a965911683c5370f0f84db6e25a49f3bc7a984f87813a6c655342e54ea0f8

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b25dbea31afcfc99bbcec3ad6fc9a47bf9ab99af1dd7eb551bdf3e93832617c2
MD5 1184f3f2fd2447c865f35cdc28b61c39
BLAKE2b-256 35a7e2f42bad1bbdf88886782721a6eee1de0de973c7fa5047d0019e25146723

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 a537978b2a9c161e1ced272d92845dd28f39c762d4594ee6046f725e32520e8b
MD5 64f6ee88956ffda9ca02dc2abc246663
BLAKE2b-256 2c48be42433efbd1a39de9fbf48147cbb4f3725724d3ff1451ba0776c3440ff1

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fc76d06c9419fc25d9dec552f6bc29c35ba7b95ce465e7efe1bb0631cf09b69a
MD5 296b65819bed569dc9acb72d163307cb
BLAKE2b-256 12a0b9de090d241f1452dba95b69c4921b6bd5b91147224124bac7ef13ebb725

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f23a55e9b62cadf3cc96dc5d344ef92e1ab2e63d5ef410dd5bde73cf43d2a497
MD5 ff09af8b466d71d5d6d952674d1cb8c9
BLAKE2b-256 88de6f31acbe85fed9c943902840822f3ba2dada43840c14f3e5ccd7c54a3a30

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9e6a34ca1e6cc404ca1ece8f2a1e835491bc578b6d07018ab91e89fc792b396a
MD5 71a322b3192c257d0e090f847dc707fd
BLAKE2b-256 b7d5ab509b2822e6932a35a3f006dc358c086c5004f583dc155636fc442282d4

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ed4aa2f8c492375407caf235f800bcb9bde789f2d52950264e351421bb6faed0
MD5 3b56e9e0b102105b8bf4fe2320bf8ff3
BLAKE2b-256 2096aff13496caa41c0fd595b549997012de3e996ef50ed44bd330f46b1c8d15

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 fa3ebdc58641b320d302f4bc588cee9200365f7df941466439a144c02346e094
MD5 34c8f808c0d484847c754f2b3051e8fa
BLAKE2b-256 a7c60ac142555a453a6af8de5fbee36d9ce64191f0d0e8411a9ae9ab5ed2f3d1

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 31d8b508c323d382aa27d939ef0032a05254275cb05acc23e01d5f689cdc08e4
MD5 d7beb61a577337b94bbaf65a25c9cce0
BLAKE2b-256 edc4d228c405ff449f7ede910022f9ea82f40c2e938d303306a102ee4cfed3d7

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 02680b3b2928ed65574a90193fa2f7511b7864ffaf3ba7ead7f808daf77485b3
MD5 823aaeff981b7d91c0ab305a0d8bd257
BLAKE2b-256 958007e3ffb79480e82b40c0948d0106de855f3c39652981d5d6979856ab02e0

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c4b2642c044f6b16f97d0e91a76fa18a828b1f53e07fb900c906f35ffee531ad
MD5 2c45c400ed4f7decf2b553e0607de28d
BLAKE2b-256 5927f26ea1f870c0c1c44081e2a9f2617bc0734e85bd18ad6c2a48a46c2efc22

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 42915e9f61fc3cee3d00d750419c071664ec7ecb9fe044ce4b03ec2edf4c44b1
MD5 0dd6b605ca61e653e5d2ba16f45ddf72
BLAKE2b-256 8663020f8c48addb0d49e78838285f4293cf4080a128950babc0f6b56d022ec8

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 0809d86965098b4f39dea054e36cafbe035c17406b1994005ddfe8904fe7a2d1
MD5 976208bb0477766458463306e656739a
BLAKE2b-256 c9d90e07e9080983c7f8124be67dc51ad70018fce70728f1dc597b9211e7028d

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5555082e3f4f7315c933745c69186890e73f5a2d32f808741c75807bdd3a7e42
MD5 2d22b708632dc3573415b39d38a8df2f
BLAKE2b-256 343fb1c5c5e2a95ec2dd826487cb092bd11a66be6edd98701512f7ba1429796f

See more details on using hashes here.

File details

Details for the file objective_lol-0.0.6-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for objective_lol-0.0.6-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 52878ffa4a230b93d9ab16e34e290cfc641e8fe101fa1ef9024ae2899d832236
MD5 d54d5b5f07b7c768d73de18863dc09c5
BLAKE2b-256 fa37bd0996944f629c597f86b6a2f3df39dde7ddd8b6e6508eb22841b03c81b5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page