Giter Club home page Giter Club logo

3em's People

Contributors

andreespirela avatar dependabot[bot] avatar littledivy avatar maximousblk avatar roaring30s avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

3em's Issues

Investigate compiling 3em executor into web assembly.

We want to investigate compiling 3em executor into web assembly. So this won't only be used as a CLI, but also as a Web API for browser, nodejs and Deno, or any other runtime that supports web assembly.

Ready when

  • Investigation is complete: Whether it is or it is not possible.

Possible refers to

  • Same input in the CLI leads to the same output in web assembly.
  • Smartweave globals (ops) are respected.
  • It's viable to run 3em in web assembly (performance wise, and size of the module wise)

Fix ordering

Currently, Smartweave and 3em hold different order of interactions which is causing a blocker for #51 .

Needs to be fixed as a critical

remove entropy sources

No one should be using generateKey, etc from SmartWeave.crypto. We should remove these APIs

Feat: Add debugging functionalities to 3EM

  • Show errors flag to show the errors of failed interactions
  • Allow users to use CLI with fake interactions and contracts (without being deployed to Arweave) for building purposes
    • JSON file for this

ci: test_sorting_all is flaky

---- test::test_sorting_all stdout ----
thread 'test::test_sorting_all' panicked at 'Invalid amount of transactions', crates/executor/lib.rs:378:9
stack backtrace:
   0: rust_begin_unwind
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/panicking.rs:498:5
   1: core::panicking::panic_fmt
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/panicking.rs:107:14
   2: three_em_executor::test::test_sorting_all::{{closure}}
             at ./lib.rs:378:9
   3: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/mod.rs:80:19
   4: <core::pin::Pin<P> as core::future::future::Future>::poll
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/future/future.rs:119:9
   5: tokio::runtime::basic_scheduler::Inner<P>::block_on::{{closure}}::{{closure}}
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/basic_scheduler.rs:228:62
   6: tokio::coop::with_budget::{{closure}}
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/coop.rs:106:9
   7: std::thread::local::LocalKey<T>::try_with
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/thread/local.rs:399:16
   8: std::thread::local::LocalKey<T>::with
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/std/src/thread/local.rs:375:9
   9: tokio::coop::with_budget
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/coop.rs:99:5
  10: tokio::coop::budget
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/coop.rs:76:5
  11: tokio::runtime::basic_scheduler::Inner<P>::block_on::{{closure}}
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/basic_scheduler.rs:228:39
  12: tokio::runtime::basic_scheduler::enter::{{closure}}
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/basic_scheduler.rs:337:29
  13: tokio::macros::scoped_tls::ScopedKey<T>::set
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/macros/scoped_tls.rs:61:9
  14: tokio::runtime::basic_scheduler::enter
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/basic_scheduler.rs:337:5
  15: tokio::runtime::basic_scheduler::Inner<P>::block_on
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/basic_scheduler.rs:218:9
  16: tokio::runtime::basic_scheduler::InnerGuard<P>::block_on
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/basic_scheduler.rs:489:9
  17: tokio::runtime::basic_scheduler::BasicScheduler<P>::block_on
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/basic_scheduler.rs:178:24
  18: tokio::runtime::Runtime::block_on
             at /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/mod.rs:461:46
  19: three_em_executor::test::test_sorting_all
             at ./lib.rs:373:5
  20: three_em_executor::test::test_sorting_all::{{closure}}
             at ./lib.rs:350:9
  21: core::ops::function::FnOnce::call_once
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/ops/function.rs:227:5
  22: core::ops::function::FnOnce::call_once
             at /rustc/db9d1b20bba1968c1ec1fc49616d4742c1725b4b/library/core/src/ops/function.rs:227:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

https://github.com/three-em/3em/runs/4892860510?check_suite_focus=true#step:5:746

benchmarks - somewhat weird RedStone SDK results

Hey, just as a summary of our discussion on Discord:

  1. your benchmark is using memCached RedStone SDK instance, recreated at each run. Because your own library is using file cache between benchmark runs - the equivalent in RedStone SDK is:
await SmartWeaveSdk.SmartWeaveNodeFactory.fileCached(arweave, "./cache")
    .contract("t9T7DIOGxx4VWXoCEeYYarFYeERTpWIC1V3y-BPZgKE")
    .readState(749180);

With your current testing procedure, on AWS EC2 t3.micro instance (somewhat weak in terms of performance), the above produces results similar to:
image

In case you were wondering why the times are around 0ms for the runs 2-10 - that's because in this case our SDK, when asked for a state at concrete block height (and that is your testing procedure) checks first, whether it has this state cached at this block height - if it does, it simply returns it, without any further processing (seems pretty natural...).

  1. Even if each test is run on a completely fresh SDK instance (cold run - without any pre-cached values, like contract definition, state or interactions), the median result is around 820ms - that's 3-4x better than in your benchmark - this really needs to be explained
    image

This is benchmark:5 from https://github.com/redstone-finance/redstone-smartcontracts-examples/blob/main/package.json#L14

All the above tests are run on the default arweave.net gateway, tested on 0.4.12 RedStone SDK version, with the exact same contract and at the exact same block height as your benchmark.

Full env info (os, js env, cpu, mem, etc.) visible on screenshots.

Isolate executor

We want to isolate the executor into its own function that takes LoadedContract and a Vec of interactions. This will facilitate unit testing

Panic when there are no interactions

stack backtrace:
   0: rust_begin_unwind
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:517:5
   1: core::panicking::panic_fmt
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/panicking.rs:101:14
   2: core::panicking::panic
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/panicking.rs:50:5
   3: three_em_arweave::arweave::Arweave::get_max_edges
             at ./crates/arweave/arweave.rs:506:7
   4: three_em_arweave::arweave::Arweave::get_interactions::{{closure}}
             at ./crates/arweave/arweave.rs:226:22
   5: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/future/mod.rs:80:19
   6: three_em_executor::execute_contract::{{closure}}::{{closure}}
             at ./crates/executor/lib.rs:61:11
   7: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/future/mod.rs:80:19
   8: tokio::runtime::task::core::CoreStage<T>::poll::{{closure}}
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/core.rs:161:17
   9: tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/loom/std/unsafe_cell.rs:14:9
  10: tokio::runtime::task::core::CoreStage<T>::poll
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/core.rs:151:13
  11: tokio::runtime::task::harness::poll_future::{{closure}}
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/harness.rs:461:19
  12: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/panic/unwind_safe.rs:271:9
  13: std::panicking::try::do_call
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:403:40
  14: <unknown>
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:431:6
  15: std::panicking::try
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:367:19
  16: std::panic::catch_unwind
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panic.rs:129:14
  17: tokio::runtime::task::harness::poll_future
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/harness.rs:449:18
  18: tokio::runtime::task::harness::Harness<T,S>::poll_inner
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/harness.rs:98:27
  19: tokio::runtime::task::harness::Harness<T,S>::poll
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/harness.rs:53:15
  20: tokio::runtime::task::raw::poll
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/raw.rs:113:5
  21: tokio::runtime::task::raw::RawTask::poll
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/raw.rs:70:18
  22: tokio::runtime::task::LocalNotified<S>::run
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/mod.rs:343:9
  23: tokio::runtime::thread_pool::worker::Context::run_task::{{closure}}
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/thread_pool/worker.rs:443:21
  24: tokio::coop::with_budget::{{closure}}
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/coop.rs:106:9
  25: std::thread::local::LocalKey<T>::try_with
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/thread/local.rs:399:16
  26: std::thread::local::LocalKey<T>::with
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/thread/local.rs:375:9
  27: tokio::coop::with_budget
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/coop.rs:99:5
  28: tokio::coop::budget
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/coop.rs:76:5
  29: tokio::runtime::thread_pool::worker::Context::run_task
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/thread_pool/worker.rs:419:9
  30: tokio::runtime::thread_pool::worker::Context::run
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/thread_pool/worker.rs:386:24
  31: tokio::runtime::thread_pool::worker::run::{{closure}}
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/thread_pool/worker.rs:371:17
  32: tokio::macros::scoped_tls::ScopedKey<T>::set
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/macros/scoped_tls.rs:61:9
  33: tokio::runtime::thread_pool::worker::run
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/thread_pool/worker.rs:368:5
  34: tokio::runtime::thread_pool::worker::Launch::launch::{{closure}}
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/thread_pool/worker.rs:347:45
  35: <tokio::runtime::blocking::task::BlockingTask<T> as core::future::future::Future>::poll
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/blocking/task.rs:42:21
  36: tokio::runtime::task::core::CoreStage<T>::poll::{{closure}}
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/core.rs:161:17
  37: tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/loom/std/unsafe_cell.rs:14:9
  38: tokio::runtime::task::core::CoreStage<T>::poll
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/core.rs:151:13
  39: tokio::runtime::task::harness::poll_future::{{closure}}
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/harness.rs:461:19
  40: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/core/src/panic/unwind_safe.rs:271:9
  41: std::panicking::try::do_call
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:403:40
  42: <unknown>
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:438:2
  43: std::panicking::try
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panicking.rs:367:19
  44: std::panic::catch_unwind
             at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35/library/std/src/panic.rs:129:14
  45: tokio::runtime::task::harness::poll_future
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/harness.rs:449:18
  46: tokio::runtime::task::harness::Harness<T,S>::poll_inner
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/harness.rs:98:27
  47: tokio::runtime::task::harness::Harness<T,S>::poll
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/harness.rs:53:15
  48: tokio::runtime::task::raw::poll
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/raw.rs:113:5
  49: tokio::runtime::task::raw::RawTask::poll
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/raw.rs:70:18
  50: tokio::runtime::task::UnownedTask<S>::run
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/task/mod.rs:379:9
  51: tokio::runtime::blocking::pool::Inner::run
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/blocking/pool.rs:265:17
  52: tokio::runtime::blocking::pool::Spawner::spawn_thread::{{closure}}
             at /Users/andrespirela/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.13.0/src/runtime/blocking/pool.rs:245:17
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: JoinError::Panic(...)',```

Some contracts fail to evaluate and return `null`as state

Example contracts:

  • usjm4PCxUd5mtaon7zc97-dt-3qf67yPyqgzLnLqk5A
  • ewepANKEVffP0cm_XKjwTYhSBqaiQrJbVrCcBiWqw-s

Both of them are PST contracts, but it seems like that should not be an issue, since other PSTs work just fine:

  • ljy4rdr6vKS6-jLgduBz_wlcad4GuKPEuhrRVaUd8tg
  • -8A6RexFkpfWwuyVO98wzSFZh0d6VJuI-buTJvlwOJQ
Logs for "usjm4PCxUd5mtaon7zc97-dt-3qf67yPyqgzLnLqk5A" (Click to expand)
./three_em run --contract-id usjm4PCxUd5mtaon7zc97-dt-3qf67yPyqgzLnLqk5A --pretty-print

██████╗     ███████╗    ███╗   ███╗
╚════██╗    ██╔════╝    ████╗ ████║
 █████╔╝    █████╗      ██╔████╔██║
 ╚═══██╗    ██╔══╝      ██║╚██╔╝██║
██████╔╝    ███████╗    ██║ ╚═╝ ██║
╚═════╝     ╚══════╝    ╚═╝     ╚═╝

The Web3 Execution Machine
Languages supported: Javascript, Solidity, Rust, C++, C, AssemblyScript, Zig, Vyper.

Version: 0.1.0

file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:13392: Uncaught ContractError: No function supplied or function not recognised: "undefined"
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 103599 token(s)!
file:///main.js:584: Uncaught ContractError: Invalid token transfer.
file:///main.js:11007: Uncaught ContractError: Vote is not active.
file:///main.js:10020: Uncaught ContractError: Caller does not have locked balances for this vote.
file:///main.js:10020: Uncaught ContractError: Caller does not have locked balances for this vote.
file:///main.js:10020: Uncaught ContractError: Caller does not have locked balances for this vote.
file:///main.js:10020: Uncaught ContractError: Caller does not have locked balances for this vote.
file:///main.js:10020: Uncaught ContractError: Caller does not have locked balances for this vote.
file:///main.js:10020: Uncaught ContractError: Caller does not have locked balances for this vote.
file:///main.js:482: Uncaught ContractError: No target specified.
file:///main.js:378: Uncaught ContractError: Invalid value for "qty". Must be an integer.
file:///main.js:378: Uncaught ContractError: Invalid value for "qty". Must be an integer.
file:///main.js:378: Uncaught ContractError: Invalid value for "qty". Must be an integer.
file:///main.js:10151: Uncaught ContractError: Caller has already voted.
file:///main.js:10151: Uncaught ContractError: Caller has already voted.
file:///main.js:10151: Uncaught ContractError: Caller has already voted.
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 95 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 98 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 98 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 98 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 92 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 92 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 92 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 92 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 92 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 92 token(s)!
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 1 token(s)!
file:///main.js:584: Uncaught ContractError: Invalid token transfer.
file:///main.js:584: Uncaught ContractError: Invalid token transfer.
file:///main.js:584: Uncaught ContractError: Invalid token transfer.
file:///main.js:791: Uncaught ContractError: Caller balance not high enough to send 999 token(s)!
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
file:///main.js:73: Uncaught TypeError: Cannot read properties of undefined (reading 'settings')
null

Implement EVM execution

Right now we are missing EVM execution. We have WASM and we have JS, we are missing EVM.

This should be implemented on src/runtime/core/execute.rs#execute_contract

Ready when:

  • I can run EVM contracts deployed to Arweave which data is a hex of the contract.
  • I can pass interactions and return the latest state of the contract
  • Opcodes standards are finalized and arweave compatible.

Create TCP handler and spec

The TCP handler will handle the connection to the core nodes & to other nodes. There's an spec that needs to be followed:

  • Headers of the TCP will be per line. Each line will represent something, information after a blank line represents data.
block
{blockId}
request
block
{blockId}
propagate

[Block information]

Those are two examples.

Release M1 arm64 binaries

It is possible to build from source right now. GA doesn't provide m1 runners so we need to do this manually.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.